Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4]
@ 2014-08-26 17:34 Max Eliaser
  2014-08-26 17:34 ` [PATCH 1/5] xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic X.Org driver Max Eliaser
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Max Eliaser @ 2014-08-26 17:34 UTC (permalink / raw)
  To: openembedded-core

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

-- 
1.8.3.2



^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/5] xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic X.Org driver
  2014-08-26 17:34 [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4] Max Eliaser
@ 2014-08-26 17:34 ` Max Eliaser
  2014-08-26 17:34 ` [PATCH 2/5] qemux86: xorg.conf: allow X.Org driver to be selected automatically Max Eliaser
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Max Eliaser @ 2014-08-26 17:34 UTC (permalink / raw)
  To: openembedded-core

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.

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
---
 .../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

diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb b/meta/recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb
new file mode 100644
index 0000000..01cd37e
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-cirrus_1.5.2.bb
@@ -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"
-- 
1.8.3.2



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/5] qemux86: xorg.conf: allow X.Org driver to be selected automatically.
  2014-08-26 17:34 [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4] Max Eliaser
  2014-08-26 17:34 ` [PATCH 1/5] xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic X.Org driver Max Eliaser
@ 2014-08-26 17:34 ` Max Eliaser
  2014-08-26 17:34 ` [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Max Eliaser @ 2014-08-26 17:34 UTC (permalink / raw)
  To: openembedded-core

A 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.

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
---
 .../xorg-xserver/xserver-xf86-config/qemux86/xorg.conf               | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf
index 10a6d9a..bbda9ea 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86/xorg.conf
@@ -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"
-- 
1.8.3.2



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
  2014-08-26 17:34 [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4] Max Eliaser
  2014-08-26 17:34 ` [PATCH 1/5] xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic X.Org driver Max Eliaser
  2014-08-26 17:34 ` [PATCH 2/5] qemux86: xorg.conf: allow X.Org driver to be selected automatically Max Eliaser
@ 2014-08-26 17:34 ` Max Eliaser
  2014-08-27 14:48   ` Burton, Ross
  2014-08-26 17:34 ` [PATCH 4/5] qemux86-64: xorg.conf: allow X.Org driver to be selected automatically Max Eliaser
  2014-08-26 17:34 ` [PATCH 5/5] qemux86-64: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser
  4 siblings, 1 reply; 9+ messages in thread
From: Max Eliaser @ 2014-08-26 17:34 UTC (permalink / raw)
  To: openembedded-core

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.)

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.

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
---
 meta/conf/machine/qemux86.conf | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/conf/machine/qemux86.conf b/meta/conf/machine/qemux86.conf
index ebc27db..3562276 100644
--- a/meta/conf/machine/qemux86.conf
+++ b/meta/conf/machine/qemux86.conf
@@ -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"
-- 
1.8.3.2



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 4/5] qemux86-64: xorg.conf: allow X.Org driver to be selected automatically.
  2014-08-26 17:34 [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4] Max Eliaser
                   ` (2 preceding siblings ...)
  2014-08-26 17:34 ` [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser
@ 2014-08-26 17:34 ` Max Eliaser
  2014-08-26 17:34 ` [PATCH 5/5] qemux86-64: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser
  4 siblings, 0 replies; 9+ messages in thread
From: Max Eliaser @ 2014-08-26 17:34 UTC (permalink / raw)
  To: openembedded-core

A 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.

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
---
 .../xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf            | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf
index 10a6d9a..bbda9ea 100644
--- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf
+++ b/meta/recipes-graphics/xorg-xserver/xserver-xf86-config/qemux86-64/xorg.conf
@@ -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"
-- 
1.8.3.2



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 5/5] qemux86-64: support X11 when QEMU is emulating a different GPU than vmware
  2014-08-26 17:34 [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4] Max Eliaser
                   ` (3 preceding siblings ...)
  2014-08-26 17:34 ` [PATCH 4/5] qemux86-64: xorg.conf: allow X.Org driver to be selected automatically Max Eliaser
@ 2014-08-26 17:34 ` Max Eliaser
  4 siblings, 0 replies; 9+ messages in thread
From: Max Eliaser @ 2014-08-26 17:34 UTC (permalink / raw)
  To: openembedded-core

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-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.

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
---
 meta/conf/machine/qemux86-64.conf | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/conf/machine/qemux86-64.conf b/meta/conf/machine/qemux86-64.conf
index 642a2d9..837f9f4 100644
--- a/meta/conf/machine/qemux86-64.conf
+++ b/meta/conf/machine/qemux86-64.conf
@@ -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"
-- 
1.8.3.2



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
  2014-08-26 17:34 ` [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser
@ 2014-08-27 14:48   ` Burton, Ross
  2014-08-29 18:20     ` Max Eliaser
  0 siblings, 1 reply; 9+ messages in thread
From: Burton, Ross @ 2014-08-27 14:48 UTC (permalink / raw)
  To: Max Eliaser; +Cc: OE-core

On 26 August 2014 18:34, Max Eliaser <max.eliaser@intel.com> wrote:
> 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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
  2014-08-27 14:48   ` Burton, Ross
@ 2014-08-29 18:20     ` Max Eliaser
  2014-09-01 14:16       ` Burton, Ross
  0 siblings, 1 reply; 9+ messages in thread
From: Max Eliaser @ 2014-08-29 18:20 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

My understanding is that xf86-video-modesetting is completely
unaccelerated, whereas xf86-video-cirrus does some 2D acceleration. Is
that not correct?

-Max

On Wed, 2014-08-27 at 15:48 +0100, Burton, Ross wrote:
> On 26 August 2014 18:34, Max Eliaser <max.eliaser@intel.com> wrote:
> > 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




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware
  2014-08-29 18:20     ` Max Eliaser
@ 2014-09-01 14:16       ` Burton, Ross
  0 siblings, 0 replies; 9+ messages in thread
From: Burton, Ross @ 2014-09-01 14:16 UTC (permalink / raw)
  To: Max Eliaser; +Cc: OE-core

On 29 August 2014 19:20, Max Eliaser <max.eliaser@intel.com> wrote:
> 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


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2014-09-01 14:16 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-26 17:34 [PATCH 0/5] Add xf86-video-fbdev and xf86-video-cirrus to qemux86 and qemux86-64 [v4] Max Eliaser
2014-08-26 17:34 ` [PATCH 1/5] xorg-drivers: xf86-video-cirrus: add a recipe for the Cirrus Logic X.Org driver Max Eliaser
2014-08-26 17:34 ` [PATCH 2/5] qemux86: xorg.conf: allow X.Org driver to be selected automatically Max Eliaser
2014-08-26 17:34 ` [PATCH 3/5] qemux86: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser
2014-08-27 14:48   ` Burton, Ross
2014-08-29 18:20     ` Max Eliaser
2014-09-01 14:16       ` Burton, Ross
2014-08-26 17:34 ` [PATCH 4/5] qemux86-64: xorg.conf: allow X.Org driver to be selected automatically Max Eliaser
2014-08-26 17:34 ` [PATCH 5/5] qemux86-64: support X11 when QEMU is emulating a different GPU than vmware Max Eliaser

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox