Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4]
PATCH 2/5 qemux86: xorg.conf: allow X.Org driver to be selected automatically.
In reply to Max EliaserA section specifying the driver to use is deleted from the image's xorg.conf, allowing the X server to automatically select the most appropriate driver. Testing shows that it does always pick the correct one.
--- .../xorg-xserver/xserver-xf86-config/qemux86/xorg.conf | 5 ----- 1 file changed, 5 deletions(-)
meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf +0 -5
@@ -30,11 +30,6 @@ Section "InputDevice" Option "USB" "on" EndSection -Section "Device" - Identifier "Graphics Controller" - Driver "vmware" -EndSection - Section "Monitor" Identifier "Generic Monitor" Option "DPMS"
Signature · 1 line
1.8.3.2
cover Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4]
Hello list,
This series adds additional x.org drivers to the qemux86 and qemux86-64 machines. Now, instead of just including the "vmware" driver, GUI images for these machines will also include "cirrus" and "fbdev" drivers. Rationale: now that the runqemu script allows users to select which VGA adapter they want qemu to emulate, the qemu images should be able to start X servers with any adapter without requiring a rebuild of the image.
Note that the drivers have only been added to the qemux86 and qemux86-64 machines. If someone is interested in trying them on the other qemu machines, they shouldn't be hard to add.
xf86-video-cirrus did not previously have a recipe, so a new one is also added as part of this series.
REVISED AGAIN: split xorg.conf changes into their own commits.
Regards,
-Max Eliaser
The following changes since commit 6882d2d9993c8655a292c93e84ea01b4738a700d:
yocto-project-qs, ref-manual: Added 'socat' package to essentials. (2014-08-12 13:50:32 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib meliaser/qemu-x-drivers
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=meliaser/qemu-x-drivers
Max Eliaser (5):
xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic
X.Org driver
qemux86: xorg.conf: allow X.Org driver to be selected automatically.
qemux86: support X11 when QEMU is emulating a different GPU than
vmware
qemux86-64: xorg.conf: allow X.Org driver to be selected
automatically.
qemux86-64: support X11 when QEMU is emulating a different GPU than
vmware
meta/conf/machine/qemux86-64.conf | 2 ++ meta/conf/machine/qemux86.conf | 2 ++ .../recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb | 13 +++++++++++++ .../xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf | 5 ----- .../xorg-xserver/xserver-xf86-config/qemux86/xorg.conf | 5 ----- 5 files changed, 17 insertions(+), 10 deletions(-) create mode 100644 meta/recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb
Signature · 1 line
1.8.3.2
PATCH 1/5 xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic X.Org driver
This driver allows X.Org to use the Cirrus Logic family of VGA adapters. Since QEMU can emulate a Cirrus VGA adapter, this driver will be of use for images that are expected to run under QEMU, if QEMU's other VGA adapters are unavailable.
--- .../recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 meta/recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb
meta/recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb new file +13 -0
@@ -0,0 +1,13 @@ +require xorg-driver-video.inc + +SUMMARY = "X.Org X server -- cirrus display driver" +DESCRIPTION = "cirrus is an Xorg driver for Cirrus Logic VGA adapters. These \ +devices are not so common in the wild anymore, but QEMU can emulate one, so \ +the driver is still useful." + +LIC_FILES_CHKSUM = "file://COPYING;md5=6ddc7ca860dc5fd014e7f160ea699295" + +SRC_URI[md5sum] = "91fd6b677d62027cd3001debb587a6a6" +SRC_URI[sha256sum] = "3361e1a65d9b84c464752fd612bdf6087622c6dd204121715366a170e5c3ccd7" + +DEPENDS += "libpciaccess"
Signature · 1 line
1.8.3.2
PATCH 3/5 qemux86: support X11 when QEMU is emulating a different GPU than vmware
In reply to Max EliaserQEMU is capable of emulating four different VGA adapters: cirrus, std, vmware, and QXL. By adding the cirrus and fbdev X.Org drivers to the qemux86 image, the image can be made to launch an X server on when cirrus and std are chosen, in addition to just vmware. (The build of QEMU in OE-Core appears to have QXL disabled, meaning a driver for it is unnecessary.)
The runqemu script now allows the choice of emulated VGA adapter to be specified manually, so it's important that qemux86 supports any configuration the user might choose without requiring the image to be rebuilt.
--- meta/conf/machine/qemux86.conf | 2 ++ 1 file changed, 2 insertions(+)
meta/conf/machine/qemux86.conf +2 -0
@@ -19,6 +19,8 @@ XSERVER = "xserver-xorg \ xf86-input-vmmouse \ xf86-input-keyboard \ xf86-input-evdev \ + xf86-video-cirrus \ + xf86-video-fbdev \ xf86-video-vmware" MACHINE_FEATURES += "x86"
Signature · 1 line
1.8.3.2
PATCH 4/5 qemux86-64: xorg.conf: allow X.Org driver to be selected automatically.
In reply to Max EliaserA section specifying the driver to use is deleted from the image's xorg.conf, allowing the X server to automatically select the most appropriate driver. Testing shows that it does always pick the correct one.
--- .../xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf | 5 ----- 1 file changed, 5 deletions(-)
meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf +0 -5
@@ -30,11 +30,6 @@ Section "InputDevice" Option "USB" "on" EndSection -Section "Device" - Identifier "Graphics Controller" - Driver "vmware" -EndSection - Section "Monitor" Identifier "Generic Monitor" Option "DPMS"
Signature · 1 line
1.8.3.2
PATCH 5/5 qemux86-64: support X11 when QEMU is emulating a different GPU than vmware
In reply to Max EliaserQEMU is capable of emulating four different VGA adapters: cirrus, std, vmware, and QXL. By adding the cirrus and fbdev X.Org drivers to the qemux86-64 image, the image can be made to launch an X server on when cirrus and std are chosen, in addition to just vmware. (The build of QEMU in OE-Core appears to have QXL disabled, meaning a driver for it is unnecessary.)
The runqemu script now allows the choice of emulated VGA adapter to be specified manually, so it's important that qemux86-64 supports any configuration the user might choose without requiring the image to be rebuilt.
--- meta/conf/machine/qemux86-64.conf | 2 ++ 1 file changed, 2 insertions(+)
meta/conf/machine/qemux86-64.conf +2 -0
@@ -20,6 +20,8 @@ XSERVER = "xserver-xorg \ xf86-input-vmmouse \ xf86-input-keyboard \ xf86-input-evdev \ + xf86-video-cirrus \ + xf86-video-fbdev \ xf86-video-vmware" MACHINE_FEATURES += "x86"
Signature · 1 line
1.8.3.2
Re: [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
In reply to Max EliaserQuoted 5 lines · Max Eliaser
QEMU is capable of emulating four different VGA adapters: cirrus, std, vmware, and QXL. By adding the cirrus and fbdev X.Org drivers to the qemux86 image, the image can be made to launch an X server on when cirrus and std are chosen, in addition to just vmware. (The build of QEMU in OE-Core appears to have QXL disabled, meaning a driver for it is unnecessary.)
I knew there was something missing...
http://lxr.free-electrons.com/source/drivers/gpu/drm/cirrus/Kconfig
The kernel has a minimal DRM/KMS driver for the Cirrus that qemu emulates, so we should also add xf86-video-modesettings driver to this list and ensure that the qemu images enable this kernel driver.
Ross
Re: [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
My understanding is that xf86-video-modesetting is completely unaccelerated, whereas xf86-video-cirrus does some 2D acceleration. Is that not correct?
-Max
Quoted 16 lines · Ross
Quoted 5 lines · Max Eliaser
QEMU is capable of emulating four different VGA adapters: cirrus, std, vmware, and QXL. By adding the cirrus and fbdev X.Org drivers to the qemux86 image, the image can be made to launch an X server on when cirrus and std are chosen, in addition to just vmware. (The build of QEMU in OE-Core appears to have QXL disabled, meaning a driver for it is unnecessary.)
I knew there was something missing...
http://lxr.free-electrons.com/source/drivers/gpu/drm/cirrus/Kconfig
The kernel has a minimal DRM/KMS driver for the Cirrus that qemu emulates, so we should also add xf86-video-modesettings driver to this list and ensure that the qemu images enable this kernel driver.
Ross
Re: [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
Quoted 3 lines · Max Eliaser
My understanding is that xf86-video-modesetting is completely unaccelerated, whereas xf86-video-cirrus does some 2D acceleration. Is that not correct?
The question is what acceleration does the qemu cirrus actually implement, and is that acceleration actually useful? Years of working on acceleration architectures for the intel gpu driver have generally shown that you can't easily beat direct access to the framebuffer...
Ross