Skip to content

Commit 8522fd8

Browse files
authored
Merge pull request #1382 from eric-ch/vglass
vglass: replace surfman/input-server with vglass
2 parents 466193a + 401e525 commit 8522fd8

File tree

126 files changed

+675
-24119
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+675
-24119
lines changed

conf/layer.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,5 @@ LAYERDEPENDS_xenclient-oe = " \
4242
meta-python \
4343
openembedded-layer \
4444
core \
45+
vglass \
4546
"

conf/machine/xenclient-dom0.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@ PREFERRED_PROVIDER_libgl1 = "nvidia-lib"
1111
MACHINE_FEATURES = "screen keyboard ethernet pci usbhost acpi ext2 x86"
1212
MACHINE_FEATURES += "rtc"
1313

14-
module_conf_i915 = "options i915 enable_psr=0"
15-
1614
KERNEL_MODULE_PROBECONF += " \
1715
i915 \
1816
"
@@ -22,3 +20,5 @@ KERNEL_MODULE_AUTOLOAD += " \
2220
hid-multitouch \
2321
txt \
2422
"
23+
24+
PREFERRED_PROVIDER_virtual/libivc = "libivc2"

conf/machine/xenclient-stubdomain.conf

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ require xenclient-common.conf
99
MACHINE_FEATURES = "screen keyboard ethernet pci acpi ext2 x86"
1010

1111
USE_VT = "0"
12+
13+
PREFERRED_PROVIDER_virtual/libivc = "libivc"

conf/machine/xenclient-uivm.conf

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,8 @@ require xenclient-common.conf
99
MACHINE_FEATURES = "screen keyboard ethernet pci acpi ext2 x86"
1010

1111
USE_VT = "0"
12+
13+
module_conf_xen-fbfront = "blacklist xen-fbfront"
14+
KERNEL_MODULE_PROBECONF += " \
15+
xen-fbfront \
16+
"

recipes-core/images/xenclient-dom0-image.bb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ BAD_RECOMMENDATIONS += " \
3131
avahi-daemon \
3232
avahi-autoipd \
3333
${@bb.utils.contains('IMAGE_FEATURES', 'web-certificates', '', 'ca-certificates', d)} \
34+
libivc \
3435
"
3536

3637
IMAGE_INSTALL += "\

recipes-core/images/xenclient-stubdomain-initramfs-image.bb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ IMAGE_FSTYPES = "cpio.gz"
1010

1111
COMPATIBLE_MACHINE = "(xenclient-stubdomain)"
1212

13+
BAD_RECOMMENDATIONS += " \
14+
libivc2 \
15+
"
16+
1317
IMAGE_INSTALL = " \
1418
busybox \
1519
bridge-utils \

recipes-core/images/xenclient-uivm-image.bb

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@ XSERVER = " \
4545
xserver-xorg \
4646
xf86-input-evdev \
4747
xf86-input-mouse \
48-
xf86-video-fbdev \
4948
xf86-input-keyboard \
49+
xf86-video-openxtfb \
5050
"
5151

5252
IMAGE_INSTALL += "\
@@ -55,7 +55,6 @@ IMAGE_INSTALL += "\
5555
packagegroup-xenclient-xfce-minimal \
5656
openssh \
5757
packagegroup-base \
58-
xenfb2 \
5958
kernel-modules \
6059
argo-module \
6160
libargo \
@@ -89,7 +88,6 @@ IMAGE_INSTALL += "\
8988
glibc-gconv-libjis \
9089
glibc-gconv-euc-jp \
9190
mobile-broadband-provider-info \
92-
shutdown-screen \
9391
ttf-dejavu-sans \
9492
ttf-dejavu-sans-mono \
9593
uim \
@@ -98,6 +96,7 @@ IMAGE_INSTALL += "\
9896
anthy \
9997
matchbox-keyboard \
10098
matchbox-keyboard-im \
99+
kernel-module-openxtfb \
101100
"
102101

103102
require xenclient-version.inc

recipes-core/initrdscripts/initramfs-stubdomain/init.sh

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,6 @@ exec 0< /dev/hvc0
3333
exec 1> /dev/hvc0
3434
exec 2> /dev/hvc0
3535

36-
## the modprobe of busybox-static is broken
37-
## so we have to use insmod directly
38-
insmod /lib/modules/`uname -r`/extra/xen-argo.ko
39-
4036
sync
4137
mkdir -p /proc /sys /mnt /tmp
4238
mount -t proc proc /proc
@@ -52,6 +48,9 @@ for arg in $KERNEL_CMDLINE; do
5248
esac
5349
done
5450

51+
modprobe xen-argo
52+
modprobe ivc
53+
5554
if [ "${LOGLVL}" = "debug" ]; then
5655
cut -f1,2,3,4,5 -d ' ' /proc/modules
5756
fi

recipes-core/packagegroups/packagegroup-xenclient-dom0.bb

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ RDEPENDS_${PN} = " \
4040
ovmf-firmware \
4141
xcpmd \
4242
xen-vif-scripts-dom0 \
43-
xenclient-input-daemon \
4443
xenclient-dom0-tweaks \
4544
xenclient-splash-images \
4645
xenclient-config-access \
@@ -94,16 +93,13 @@ RDEPENDS_${PN} = " \
9493
libicbinn-server \
9594
screen \
9695
xenclient-pcrdiff \
97-
drm-surfman-plugin \
9896
eject \
9997
linux-input \
10098
iputils-ping \
10199
vusb-daemon \
102100
xenmgr-data \
103101
updatemgr \
104102
uid \
105-
surfman \
106-
linuxfb-surfman-plugin \
107103
xenmgr \
108104
xen-tools-xenstore \
109105
tpm2-tss \
@@ -112,6 +108,8 @@ RDEPENDS_${PN} = " \
112108
pesign \
113109
ipxe \
114110
udev-extraconf-dom0 \
111+
vglass \
112+
disman \
115113
"
116114

117115
# OE upgrade - temporarly disabled:

recipes-extended/qemu-dm/qemu-dm.inc

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ DEPENDS = " \
1010
libargo \
1111
zlib \
1212
libcap-ng \
13-
libdmbus \
1413
pixman \
1514
"
1615

@@ -43,15 +42,9 @@ SRC_URI += "file://0001-configure-use-valid-args-testing-sem_timedwait.patch \
4342
file://generic-xenstore-extensions.patch \
4443
file://readonly-ide.patch \
4544
file://hvm-param-dm-domain.patch \
46-
file://dmbus.patch \
47-
file://switcher.patch \
4845
file://acpi.patch \
49-
file://xenmou.patch \
46+
file://argo-configure.patch \
5047
file://atapi-pass-through.patch \
51-
file://vbe-xt-extensions.patch \
52-
file://vga-spinlock.patch \
53-
file://vga-shadow-bda.patch \
54-
file://surfman-dcl.patch \
5548
file://audio-policy.patch \
5649
file://msix-cap-disable.patch \
5750
file://openxtaudio.patch \
@@ -62,7 +55,6 @@ SRC_URI += "file://0001-configure-use-valid-args-testing-sem_timedwait.patch \
6255
file://acpi-wakeup.patch \
6356
file://openxt-misc-fixes.patch \
6457
file://qmp-argo-char-driver.patch \
65-
file://exit-mainloop-on-reset.patch \
6658
file://write-acpi-state-to-xenstore.patch \
6759
file://set-blockdev-ro.patch \
6860
file://block-remove-unused-block-format-support.patch \
@@ -77,6 +69,8 @@ S = "${WORKDIR}/qemu-${PV}"
7769

7870
inherit autotools-brokensep pkgconfig python3native
7971

72+
require recipes-extended/qemu-dm/qemu-dm-vglass.inc
73+
8074
# Include a minimal amount of blobs by default.
8175
FILES_${PN} += "/usr/share/qemu/keymaps/en-us \
8276
/usr/share/qemu/keymaps/commons \
@@ -127,7 +121,6 @@ EXTRA_OECONF += " \
127121
--disable-tpm \
128122
--enable-pie \
129123
--enable-werror \
130-
--enable-surfman \
131124
--enable-atapi-pt \
132125
--enable-atapi-pt-argo \
133126
--enable-readonly-ide \

recipes-extended/qemu-dm/qemu-dm/acpi-pm-feature.patch

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ PATCHES
3939
################################################################################
4040
--- a/hw/acpi/core.c
4141
+++ b/hw/acpi/core.c
42-
@@ -738,15 +738,24 @@ void acpi_send_gpe_event(ACPIREGS *ar, q
42+
@@ -742,15 +742,24 @@ void acpi_send_gpe_event(ACPIREGS *ar, q
4343

4444
void acpi_update_sci(ACPIREGS *regs, qemu_irq irq)
4545
{
@@ -134,10 +134,10 @@ PATCHES
134134
{
135135
--- a/hw/xen/Makefile.objs
136136
+++ b/hw/xen/Makefile.objs
137-
@@ -6,3 +6,4 @@ obj-$(CONFIG_XEN_PCI_PASSTHROUGH) += xen
137+
@@ -4,3 +4,4 @@ common-obj-$(CONFIG_XEN) += xen_backend.
138+
obj-$(CONFIG_XEN_PCI_PASSTHROUGH) += xen-host-pci-device.o
138139
obj-$(CONFIG_XEN_PCI_PASSTHROUGH) += xen_pt.o xen_pt_config_init.o xen_pt_graphics.o xen_pt_msi.o
139140
obj-$(CONFIG_XEN_PCI_PASSTHROUGH) += xen_pt_load_rom.o
140-
obj-$(CONFIG_XEN) += xenmou.o
141141
+obj-$(CONFIG_XEN) += xen_acpi_pm.o
142142
--- /dev/null
143143
+++ b/hw/xen/xen_acpi_pm.c
@@ -1349,15 +1349,15 @@ PATCHES
13491349
DEF("no-reboot", 0, QEMU_OPTION_no_reboot, \
13501350
--- a/vl.c
13511351
+++ b/vl.c
1352-
@@ -132,6 +132,7 @@ int main(int argc, char **argv)
1352+
@@ -131,6 +131,7 @@ int main(int argc, char **argv)
13531353
#include "qapi/qapi-commands-ui.h"
13541354
#include "qapi/qmp/qerror.h"
13551355
#include "sysemu/iothread.h"
13561356
+#include "hw/xen/xen_acpi_pm.h"
13571357

13581358
#define MAX_VIRTIO_CONSOLES 1
13591359

1360-
@@ -3865,6 +3866,15 @@ int main(int argc, char **argv, char **e
1360+
@@ -3860,6 +3861,15 @@ int main(int argc, char **argv, char **e
13611361
}
13621362
xen_domid_restrict = true;
13631363
break;

recipes-extended/qemu-dm/qemu-dm/acpi-wakeup.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ Applied in any order:
5555
common-obj-$(call lnot,$(CONFIG_IPMI)) += ipmi-stub.o
5656
--- a/hw/acpi/core.c
5757
+++ b/hw/acpi/core.c
58-
@@ -614,6 +614,7 @@ void acpi_pm1_cnt_update(ACPIREGS *ar,
58+
@@ -618,6 +618,7 @@ void acpi_pm1_cnt_update(ACPIREGS *ar,
5959
/* ACPI specs 3.0, 4.7.2.5 */
6060
if (sci_enable) {
6161
ar->pm1.cnt.cnt |= ACPI_BITMASK_SCI_ENABLE;

recipes-extended/qemu-dm/qemu-dm/acpi.patch

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -173,17 +173,7 @@ PATCHES
173173
}
174174
--- a/hw/xen/xen_backend.c
175175
+++ b/hw/xen/xen_backend.c
176-
@@ -37,6 +37,9 @@
177-
178-
#include <xen/grant_table.h>
179-
180-
+#include "ui/xen-input.h"
181-
+#include "hw/xen/xen-dmbus.h"
182-
+
183-
DeviceState *xen_sysdev;
184-
BusState *xen_sysbus;
185-
186-
@@ -955,3 +958,19 @@ int xenstore_generic_init(void)
176+
@@ -955,3 +955,17 @@ int xenstore_generic_init(void)
187177

188178
return 0;
189179
}
@@ -199,8 +189,6 @@ PATCHES
199189
+ return -1;
200190
+ }
201191
+
202-
+ xen_input_send_shutdown(type);
203-
+
204192
+ return xenstore_write_int(dompath, "power-state", type);
205193
+}
206194
--- a/include/hw/xen/xen.h
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
--- a/configure
2+
+++ b/configure
3+
@@ -486,6 +486,7 @@ docker="no"
4+
debug_mutex="no"
5+
libpmem=""
6+
libudev="no"
7+
+libargo="no"
8+
9+
# cross compilers defaults, can be overridden with --cross-cc-ARCH
10+
cross_cc_aarch64="aarch64-linux-gnu-gcc"
11+
@@ -5686,6 +5687,16 @@ if test "$libudev" != "no" ; then
12+
fi
13+
fi
14+
15+
+##########################################
16+
+# argo support probe
17+
+if test "$libargo" = "yes"; then
18+
+ libargo_cflags=$($pkg_config --cflags libargo)
19+
+ libargo_libs=$($pkg_config --libs libargo)
20+
+ if ! compile_prog "$libargo_cflags" "$libargo_libs"; then
21+
+ feature_not_found "libargo" "Install libargo devel"
22+
+ fi
23+
+fi
24+
+
25+
# Now we've finished running tests it's OK to add -Werror to the compiler flags
26+
if test "$werror" = "yes"; then
27+
QEMU_CFLAGS="-Werror $QEMU_CFLAGS"
28+
@@ -6122,6 +6133,7 @@ echo "capstone $capstone"
29+
echo "docker $docker"
30+
echo "libpmem support $libpmem"
31+
echo "libudev $libudev"
32+
+echo "libargo $libargo"
33+
34+
if test "$sdl_too_old" = "yes"; then
35+
echo "-> Your SDL version is too old - please upgrade to have SDL support"
36+
@@ -6997,6 +7009,11 @@ if test "$libudev" != "no"; then
37+
echo "LIBUDEV_LIBS=$libudev_libs" >> $config_host_mak
38+
fi
39+
40+
+if test "$libargo" = "yes" ; then
41+
+ echo "LIBARGO_CFLAGS=$libargo_cflags" >> $config_host_mak
42+
+ echo "LIBARGO_LIBS=$libargo_libs" >> $config_host_mak
43+
+fi
44+
+
45+
# use included Linux headers
46+
if test "$linux" = "yes" ; then
47+
mkdir -p linux-headers

recipes-extended/qemu-dm/qemu-dm/atapi-pass-through.patch

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,12 @@ Ross Philipson, <philipsonr@ainfosec.com>, 10/13/2016
217217
block-obj-y += null.o mirror.o commit.o io.o create.o
218218
block-obj-y += throttle-groups.o
219219
block-obj-$(CONFIG_LINUX) += nvme.o
220+
@@ -61,3 +62,5 @@ qcow.o-libs := -lz
221+
linux-aio.o-libs := -laio
222+
parallels.o-cflags := $(LIBXML2_CFLAGS)
223+
parallels.o-libs := $(LIBXML2_LIBS)
224+
+atapi-pt-protocol.o-cflags := $(LIBARGO_CFLAGS)
225+
+atapi-pt-protocol.o-libs := $(LIBARGO_LIBS)
220226
--- /dev/null
221227
+++ b/block/atapi-pt-protocol.c
222228
@@ -0,0 +1,1503 @@
@@ -1791,7 +1797,7 @@ Ross Philipson, <philipsonr@ainfosec.com>, 10/13/2016
17911797
break;
17921798
--- a/configure
17931799
+++ b/configure
1794-
@@ -452,6 +452,8 @@ crypto_afalg="no"
1800+
@@ -451,6 +451,8 @@ crypto_afalg="no"
17951801
seccomp=""
17961802
glusterfs=""
17971803
stubdom="no"
@@ -1800,22 +1806,22 @@ Ross Philipson, <philipsonr@ainfosec.com>, 10/13/2016
18001806
glusterfs_xlator_opt="no"
18011807
glusterfs_discard="no"
18021808
glusterfs_fallocate="no"
1803-
@@ -1357,6 +1359,14 @@ for opt do
1809+
@@ -1353,6 +1355,14 @@ for opt do
18041810
;;
18051811
--enable-glusterfs) glusterfs="yes"
18061812
;;
18071813
+ --enable-atapi-pt) atapipt="yes"
18081814
+ ;;
18091815
+ --disable-atapi-pt) atapipt="no"
18101816
+ ;;
1811-
+ --enable-atapi-pt-argo) atapiptargo="yes" && atapipt="yes"
1817+
+ --enable-atapi-pt-argo) atapiptargo="yes" && atapipt="yes" && libargo="yes"
18121818
+ ;;
18131819
+ --disable-atapi-pt-argo) atapiptargo="no"
18141820
+ ;;
18151821
--disable-virtio-blk-data-plane|--enable-virtio-blk-data-plane)
18161822
echo "$0: $opt is obsolete, virtio-blk data-plane is always on" >&2
18171823
;;
1818-
@@ -6128,6 +6138,8 @@ echo "GlusterFS support $glusterfs"
1824+
@@ -6104,6 +6114,8 @@ echo "GlusterFS support $glusterfs"
18191825
echo "gcov $gcov_tool"
18201826
echo "gcov enabled $gcov"
18211827
echo "OpenXT stubdomain support $stubdom"
@@ -1824,7 +1830,7 @@ Ross Philipson, <philipsonr@ainfosec.com>, 10/13/2016
18241830
echo "TPM support $tpm"
18251831
echo "libssh2 support $libssh2"
18261832
echo "TPM passthrough $tpm_passthrough"
1827-
@@ -6802,6 +6814,14 @@ if test "$stubdom" = "yes" ; then
1833+
@@ -6776,6 +6788,14 @@ if test "$stubdom" = "yes" ; then
18281834
echo "CONFIG_STUBDOM=y" >> $config_host_mak
18291835
fi
18301836

@@ -1841,11 +1847,14 @@ Ross Philipson, <philipsonr@ainfosec.com>, 10/13/2016
18411847
# TPM passthrough support?
18421848
--- a/hw/ide/Makefile.objs
18431849
+++ b/hw/ide/Makefile.objs
1844-
@@ -12,3 +12,4 @@ common-obj-$(CONFIG_AHCI) += ahci.o
1850+
@@ -12,3 +12,7 @@ common-obj-$(CONFIG_AHCI) += ahci.o
18451851
common-obj-$(CONFIG_AHCI) += ich.o
18461852
common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
18471853
common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
18481854
+common-obj-$(CONFIG_ATAPI_PT) += atapi_pt.o
1855+
+
1856+
+atapi-pt.o-cflags := $(LIBARGO_CFLAGS)
1857+
+atapi-pt.o-libs := $(LIBARGO_LIBS)
18491858
--- a/hw/ide/atapi.c
18501859
+++ b/hw/ide/atapi.c
18511860
@@ -320,7 +320,10 @@ void ide_atapi_cmd_reply_end(IDEState *s

0 commit comments

Comments
 (0)