[SeaBIOS] [Qemu-devel] QEMU regression problems

Kevin O'Connor kevin at koconnor.net
Tue Apr 20 03:26:19 CEST 2010


On Mon, Apr 19, 2010 at 08:19:55AM +0200, Gerhard Wiesinger wrote:
> Kevin O'Connor wrote:
> >The SeaBIOS log would really help.  This can be done by adding:
> >
> >-chardev stdio,id=seabios -device isa-debugcon,iobase=0x402,chardev=seabios
> >
> >to the qemu command line.
> OK, I made some research on the topic. Problem is that QEMM pushes
> the Extended BIOS data area to High RAM on some machines (QEMU,
> P733). Therefore 640k low memory is available and checkit reports
> 640kB + 6kB=646kB EBIOS DATA AREA. Whats strange that on a physical
> Pentium 733 machine this works correctly (details see below and
> attached files), maybe someone can try to find the problem with
> QEMM+Checkit 3.0 (maybe there is still some other BIOS function
> incorrectly implemented). QEMM parameter NOXBDA avoids moving the
> XBDA up to HI RAM and therefore checkit reports 640kB well.
> 
> SeaBIOS seems to be correct (see below and attached patch files and
> description below).
> Total Memory: 256MB (262144kB), Base RAM: 637kB
> Extended BIOS Data Area size: 3 kB, segment=9f40
> 
> SCSI option ROM:
> After option ROMS, Total Memory: 256MB (262144kB), Base RAM: 634kB
> Extended BIOS Data Area size: 6 kB, segment=9e80

Which scsi option rom?  Can you forward the log using the command line
above?  Another thing that may help is increasing the debug level in
seabios (set CONFIG_DEBUG_LEVEL to 8 in src/config.h and recompile).

SeaBIOS will lock parts of ram from 0xc0000-0xfffff so that the option
roms aren't writable.  I wonder if that is confusing qemm when it
tries to locate the ebda into that area.

-Kevin



More information about the SeaBIOS mailing list