Commit Graph

24 Commits

Author SHA1 Message Date
Carlos Alberto Lopez Perez 67959b9a15 machine/qemu: Fix OpenGL/GLX support with xserver-xorg.
* The Xorg server needs to load the GLX extension in order to
    enable proper OpenGL support.

  * Before this patch, glxinfo aborted with:

      root@qemux86:~# glxinfo
      name of display: :0.0
      Error: couldn't find RGB GLX visual or fbconfig

  * After this patch, it works as expected:

      root@qemux86:~# glxinfo | grep " render"
      direct rendering: Yes
      OpenGL renderer string: Software Rasterizer

(From OE-Core rev: 8f33627684755899c5b1fd7eeefdd89c42e68fec)

Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-12 14:36:27 +01:00
Randy Witt fd164dcc31 qemurunner: Use two serial ports and log console with a thread
qemu can freeze and stop responding if the socket buffer connected to a tcp
serial connection fills up. This happens of course when the reader of
the serial data doesn't actually read it.

This happened in the qemurunner code, because after checking for the
"login:" sentinel, data was never again read from the serial connection.

This patch solves the potential freeze by adding a thread to continuously
read the data from the console and log it. So it also will give a full log
of the console, rather than just up to the login prompt.

To simplify this patch, another serial port was also added to use for the
sole purpose of watching for the sentinel as well as being the interactive
serial port. This will also prevent the possibility of lots of debug
data on the console preventing the sentinel value from being seen due to
interleaved text.

(From OE-Core rev: 2da3fee6b6d9f4dd4c4cb529f4ba393c20aa0f13)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:47:07 +01:00
Max Eliaser 30c22a35d6 qemux86-64: support X11 when QEMU is emulating a different GPU than vmware
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.

(From OE-Core rev: 1216de77a7f23fa10e34aee1ebe27fcc6a6589c0)

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-27 12:12:31 +01:00
Otavio Salvador 4c14b09498 Globally replace 'base_contains' calls with 'bb.utils.contains'
The base_contains is kept as a compatibility method and we ought to
not use it in OE-Core so we can remove it from base metadata in
future.

(From OE-Core rev: d83b16dbf0862be387f84228710cb165c6d2b03b)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25 17:19:19 +01:00
Darren Hart 9261d58739 qemux86_64: Use the core2-64 tune
As x86_64 has been "demoted" to an ABI definition rather than a concrete
tune file, replace it with core2-64 for the qemux86-64 machine.

(From OE-Core rev: 65c1ba225a410d2ee1913d55c6f986db9f54cc8e)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Paul Eggleton <paul.eggleton@intel.com>
Cc: Tom Zanussi <tom.zanussi@intel.com>
Cc: Nitin Kamble <nitin.a.kamble@intel.com>
Cc: Mark Hatle <mark.hatle@windriver.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Cc: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:50:54 +00:00
Ross Burton e7f3fee059 qemu: only depend on mesa-driver-swrast if opengl is enabled
As Mesa refuses to compile if the "opengl" DISTRO_FEATURE isn't enabled,
mesa-driver-swrast has to be conditional in the QEMU machine defintions too.

(From OE-Core rev: 9951e1da6a755f9a46d3a595aa4c2f975aee8f46)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-11 11:05:05 +01:00
Laurentiu Palcu 9915f945c9 qemux86*.conf: replace XSERVER weak assignment with a hard one
Because the qemu.inc is now included before the XSERVER assignment, the
xf86-video-vmware and xf86-video-vmmouse are not built and the X for
qemux86 and qemux86-64 does not start.

[YOCTO #4124]

(From OE-Core rev: f9c12a42f9777bc66b2ce63a244e655d167025ed)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-27 11:18:27 +00:00
Richard Purdie 88fa952b7c conf/machine: Clean up MACHINEOVERRIDES handling
OVERRIDES reads from left to right, least to most specific. We were
appending to MACHINEOVERRIDES when we should have been prepending so
the ordering of qemuall verses qemuxxx was incorrect, as was the x86
override and several of the arm overrides. This patch is a batch cleanup
of the various issues to correct the order from least to most specific.
The include order does matter and we needed to tweak some of that in this
patch too.

[YOCTO #4090]

(From OE-Core rev: bdc1b214431c9c93a929b547b9a61e7b87fbd366)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-25 17:42:58 +00:00
Laurentiu Palcu e66deb0156 mesa: rename mesa-dri recipe to just mesa
Rename mesa-dri recipes to just mesa. Also, replace all references to
mesa-dri in all recipes/configs.

The reason for this renaming (quote from bugzilla):

"mesa-dri is a artefact of mesa-xlib existing, which doesn't anymore.
mesa-dri should be renamed to mesa."

[YOCTO #3385]

(From OE-Core rev: c8bbb9983bcc7cfc5332e89c3e8148505b4ca83f)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-22 17:07:16 +00:00
Richard Purdie fa471acc00 qemugl: Remove since support for it was removed from qemu
(From OE-Core rev: 0195a08f77fe0e01b2d7548ccffeaf89d2d780e1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-24 12:50:44 +01:00
Khem Raj 5cf953b02e machines/x86: Drop redundant glibc configure knobs
nptl and thereby tls are not optional anymore

(From OE-Core rev: 1a4b277e47a8d624cde4c73713d036e230f3a523)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-10 13:01:50 +01:00
Damien Lespiau 3ea5c742c8 core: Prefer mesa-dri as virtual/libopengles1/2 provider
Wihtout it, you have both mesa-dri and mesa-xlib as providers. Let's
prefer the accelerated version.

(From OE-Core rev: 9f83d93c65942f9ed1b25a24976f92ae06c425c8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:45:57 +01:00
Tom Zanussi fb8aaf6f8e qemumachines: make MACHINE_FEATURES append follow qemu.inc include
qemu.inc does a straight assign to MACHINE_FEATURES so overwriting the
preceding append to MACHINE_FEATURES, so the MACHINE_FEATURES append
needs to be moved after the include.

This situation came about as a result of commit 71a4bf386:

    qemumachines: Enable xserver-xorg as default xserver

    For qemux86 and qemux86-64 include qemu.inc after defining XSERVER

which missed this side-effect (and maybe others).

(From OE-Core rev: 4f336e5f416df382fdd2b405314741164d537b22)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04 17:40:37 +01:00
Khem Raj 71a4bf3861 qemumachines: Enable xserver-xorg as default xserver
For qemux86 and qemux86-64 include qemu.inc after defining XSERVER

XSERVER variable is also weakly defined in task-core-x11.bb
which means we can not use ??= otherwise when building any qemu image
that uses task-core-x11.bb will get the wrong definition

So we define the XSERVER common set for qemu in qemu.inc
and as we know x86 and x86-64 qemu overrides the default
we include qemu.inc after that definition which means that
qemux86 and qemux86-64 get their own definitions and other
qemus get the definitions from qemu.inc. other non-qemu machine
will get their defintion from task which points to kdrive
as of now.

(From OE-Core rev: 62dba36166bc5faa32ba3e0664ae98b168cde6b1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-24 08:53:56 +01:00
Zhai Edwin 5cdb58f683 virtual/libgl: use mesa-xlib for qemuarm/qemumips/qemuppc
Still need mesa-xlib for emulation of GLX interface on qemuarm/mips/ppc, where
mesa-dri doesn't work for pure qemu emulator.

[YOCTO #2066] fixed.

(From OE-Core rev: 22775b5f1d9c6d9860a579245bf7a48a982ab62f)

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-30 17:20:24 +01:00
Richard Purdie edc546797d conf/machine: Don't poke around providers which aren't machine specific/safe
Machines shouldn't be poking around PREFERRED_PROVIDERS which aren't
machine specific or at least machine safe. Kernels are machine specific
and the xserver is selectable. libx11 and mesa are now really a distro choice
and machine configurations shouldn't be poking around them as it just leads
to corruption, conflicts and confusion.

(From OE-Core rev: 97a57aca12437c24b628071bb189c9f3b94e27ca)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-06 22:47:03 +00:00
Martin Jansa c09f0eb561 xserver-xf86(-dri)-lite: rename to xserver-xorg and xserver-xorg-lite
* xserver-xorg is closer to upstream naming and
  that's how it's named in OE-classic and meta-oe? It would make meta-oe
  transition easier and better to do it now then convert meta-oe to
  xserver-xf86 and then rename it back later.

(From OE-Core rev: 0b31c7200a368533df970f0efeb81e2e20c73593)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-11 18:08:31 +01:00
Richard Purdie e8e06a48b3 bitbake.conf/qemux86-64: Automate TRANSLATED_TARGET_ARCH
(From OE-Core rev: 6def7129cf7580a935c05cc05b7f803812d5bb18)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-03 17:46:46 +01:00
Richard Purdie 039a2d006b conf/machine/tune: Overhaul tune include file variables
There is currently consideradble confusion over how the tune files operate
and how these interact with the rest of the build system. This update/overhaul
changes things so the tune files are primarily resonsible for setting:

TUNE_ARCH - What was formerly set as TARGET_ARCH and is the value that
represents the architecture we're targetting.

TUNE_PKGARCH - The value that represents the tune confuration that this set
of tune parameters results in.

This allows the significant improvement that the core can now always determine
the target architecture value, even when TARGET_ARCH needs to be reset to
something different and likewise, there is one package architecture variable
the core can reference allowing simplification of the BASE_PACKAGE_ARCH, PACKAGE_ARCH
and FEED_ARCH variables.

(From OE-Core rev: a10de4cf8b424ee95c8e283e75d486be5b3b8eac)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-25 12:06:30 +01:00
Richard Purdie 367a1394e2 machine/qemu: Add qemu-config as an essential machine speicfic dependency and drop specific distro config
(From OE-Core rev: 617b8f2ae26a6b4ac57795fead39ef20b1f92ecc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-11 15:26:16 +01:00
Koen Kooi 38b25eed95 machines: move PACKAGE_EXTRA_ARCHS to tune files
This gets us closer to making including tune-<arch>.inc "just work".
Moving the TARGET_ARCH definitions is something for a follup patch.

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-10 18:18:43 +00:00
Lianhao Lu 2021e2a74f Using TRANSLATED_TARGET_ARCH instead of TARGET_ARCH.
Using TRANSLATED_TARGET_ARCH instead of TARGET_ARCH for
cross-canadian packages. This is due to the TARGET_ARCH of x86_64
would results incorrect packaging in cross-canadian packages.

The pacakge name appendix of x86_64 target in cross-canadian
packages is x86-64.

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2010-12-10 15:36:48 +00:00
Qing He 59646974ab qemux86-64: remove -march for 64bit common pc
Fixes [BUGID #347].

Signed-off-by: Qing He <qing.he@intel.com>
2010-09-27 08:59:16 -07:00
Richard Purdie fb10983b99 qemux86-64: Add new emulation machine for 64bit x86
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-07-27 22:45:41 -07:00