[Xorg-driver-geode] Geode LX video testing results

Jordan Crouse jordan.crouse at amd.com
Sun Dec 23 09:05:55 PST 2007


On 22/12/07 11:35 -0500, Bart Trojanowski wrote:
> I have continued my investigation into where X freezes.
> 
> So far we know that using the amd driver crashes when DDC data is
> retrieved from the BIOS...
> 
> * Jordan Crouse <jordan.crouse at amd.com> [071214 14:45]:
> > > It dies in vbeDoEDID() called by GeodeDoDDC().
> > 
> > There are a lot of INT10 calls in that code path.  WE're getting pretty close
> > to needing somebody with a FS2 and knowledge of the BIOS to jump in and
> > watch what happens on the other side.
> 
> I did some more probing.  And here are my findings...
> 
> * X executes the BIOS code in an emulator (news to me, probably not to
>    the rest on this list).
> 
> * the emulator dies when executing outl(0x20, 00000018)
> 
>    This is *not* the first out() instruction.  It is the first port
>    operation on port 0x20.
> 
>    0x20 is the initialization port for the PIC.  Why any INT 10 routine
>    would need to (re)initialize the PIC is a mystery to me.
> 
> * the call trace before we freeze is...
> 
>   /usr/lib/xorg/modules//libint10.so(x_outl+0x1b6) [0xb7b3cd46]
>   /usr/lib/xorg/modules//libint10.so [0xb7b54fd4]
>   /usr/lib/xorg/modules//libint10.so(X86EMU_exec+0x23a) [0xb7b552ca]
>   /usr/lib/xorg/modules//libint10.so(xf86ExecX86int10+0xf9) [0xb7b3f219]
>   /usr/lib/xorg/modules//libvbe.so(vbeDoEDID+0x30e) [0xb79e24ce]
>   /usr/lib/xorg/modules/drivers//amd_drv.so(GeodeDoDDC+0xce) [0xb7b8033e]
>   /usr/lib/xorg/modules/drivers//amd_drv.so [0xb7b95537]
>   X(InitOutput+0x9a4) [0x80a8f14]
>   X(main+0x27b) [0x8076dab]
>   /lib/libc.so.6(__libc_start_main+0xe0) [0xb7d4a050]
>   X(FontFileCompleteXLFD+0x1e9) [0x8076301]
> 
> Some thoughts...
> 
> * Is it common for other VIDEO BIOS implementations to muck with the PIC?
> * What would happen if I ignored a write to port 20?
> 
> Jordan, you said that it may be time to talk to people on the general
> list.  Did you mean <xorg at lists.freedesktop.org> ?

Yep - this is out of our expertise area - we need to find out more about
how VBE works.

Jordan

---
Jordan Crouse
Systems Software Development Engineer 
Advanced Micro Devices, Inc.




More information about the Xorg-driver-geode mailing list