Can't start X on Intel GMA600 display card system

Adam Jackson ajax at redhat.com
Tue Sep 6 15:19:18 UTC 2011


On Tue, 2011-09-06 at 22:04 +0800, TOE Physics wrote:

> [   166.329] (II) VESA(0): VESA VBE Version 3.0
> [   166.329] (II) VESA(0): VESA VBE Total Mem: 7872 kB
> [   166.329] (II) VESA(0): VESA VBE OEM: Intel(R)Oaktrail Graphics
> Chipset Accelerated VGA BIOS

GMA600 (Oaktrail) is, like Poulsbo, an Imagination video block bolted to
an Intel display engine.  Which we don't have a non-staging driver for,
yet, so we fall back to vesa.  After which point...

> [   167.739] c000:0287: 3A ILLEGAL EXTENDED X86 OPCODE!

"3A" here means 0F 3A which is in the SSE3+ instruction space [1], and
now I'm just angry.  Right now the x86 emulator we're using doesn't
implement SSE3 (or anything newer than plain i686, in fact) because the
processor manuals say [2] they don't work in real or vm86 mode, so why
would you bother.

Probably we should just build the staging driver, because I seriously do
not have any desire to implement emulation of MMX through whatever SSE
we're on now.  Life's too short to use real mode.

[1] - http://ref.x86asm.net/coder32.html#x0F3A

[2] - Well, they hint very strongly.  The section on real mode gives an
explicit list of what instructions are legal in real mode, and that
"Execution of any of the other IA-32 architecture instructions (not
given in the previous two lists) in real-address mode result in an
invalid-opcode exception (#UD) being generated."  In the next section
where vm86 is described, we read "The execution environment of the
processor while in the 8086-emulation state is the same as [...] for
real-address mode", and that the eflags.vm bit (ie, vm86-or-not) is
tested "[w]hen decoding instructions, to determine which instructions
are not supported in virtual-8086 mode and which instructions are
sensitive to IOPL."  But, English being what it is, it's possible to
read this as meaning that there's a documented list of instructions that
work in real mode, and an undocumented list of instructions that work in
vm86 mode.

- ajax

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
Url : http://lists.fedoraproject.org/pipermail/test/attachments/20110906/a8088088/attachment.bin 


More information about the test mailing list