[SeaBIOS] [edk2] (PAM stuff) reset doesn't work on OVMF + SeaBIOS CSM

Laszlo Ersek lersek at redhat.com
Thu Feb 14 22:14:28 CET 2013


On 02/14/13 21:54, H. Peter Anvin wrote:
> On 02/14/2013 12:41 PM, Laszlo Ersek wrote:
>>
>> ). cpu_reset() [target-i386/helper.c] sets CS:IP to f000:fff0, which is
>> the exact address of... reset_vector() in SeaBIOS.
>>
> 
> This would be a bug, but it isn't quite true.
> 
> If you look at x86_cpu_reset() you will note that it sets the code
> segment base to 0xffff0000, not 0xf0000 as one could expect from the
> above.  This is also true of a physical x86.
> 
> As such, the *real* reset vector is at 0xfffffff0 as opposed to the
> SeaBIOS vector at 0xffff0 -- this is a backwards compatibility vector
> which typically just issues a real reset.
> 
> Now, if Qemu doesn't handle the distinction here correctly, that is a bug.

I think I was simply wrong :)

Thanks
Laszlo



More information about the SeaBIOS mailing list