<div dir="ltr"><br><br><div class="gmail_quote">On Thu, Oct 16, 2008 at 1:56 PM, ron minnich <span dir="ltr"><<a href="mailto:rminnich@gmail.com">rminnich@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I did not realize we had gone private. see below.<br>
<br>
Basically, vga bios tries to size a 16 meg register and at an<br>
intermediate point the vga hardware ends up decoding the top 16 mb of<br>
memory.<br>
<br>
I welcome a fix. It's just not obvious to me.</blockquote><div><br>But we could just say that VGA ROM init is a black hole, only call functions defined there and hope it works. :)<br><br>Myles <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<font color="#888888"><br>
ron<br>
</font><div class="Ih2E3d"><br>
<br>
---------- Forwarded message ----------<br>
From: ron minnich <<a href="mailto:rminnich@gmail.com">rminnich@gmail.com</a>><br>
Date: Thu, Oct 16, 2008 at 12:15 PM<br>
Subject: Re: [coreboot] SimNOW VGA int 1a<br>
To: Marc Jones <<a href="mailto:marc.jones@amd.com">marc.jones@amd.com</a>><br>
Cc: Myles Watson <<a href="mailto:mylesgw@gmail.com">mylesgw@gmail.com</a>>, Jordan Crouse <<a href="mailto:jordan.crouse@amd.com">jordan.crouse@amd.com</a>><br>
<br>
<br>
</div><div><div></div><div class="Wj3C7c">On Thu, Oct 16, 2008 at 12:08 PM, Marc Jones <<a href="mailto:marc.jones@amd.com">marc.jones@amd.com</a>> wrote:<br>
> ron minnich wrote:<br>
>><br>
<br>
>> well, hang on.<br>
>><br>
>> I write ffffffff to BAR 10.<br>
>> Then what is left in BAR 10 is ff000000. That decodes to the top 16 MB<br>
>> of address space. At that point, all the memory goes bye bye.<br>
>> So do we really want the device enabled?<br>
>><br>
>> Is this maybe a bug in the vga bios? This won't be an issue for code<br>
>> not running in the top 16 MB<br>
>><br>
><br>
> Yes it goes away but nothing should access it then. Put the BAR back and it<br>
> should be fine.<br>
<br>
but the EIP is accessing it then. We're running code at ffffxxxx.<br>
<br>
Here is the sequence:<br>
<br>
we're running at ffffxxxx. We write ffffffff at request of vgabios to<br>
the BAR 10. At that point vga is decoding ffxxxxxx.<br>
<br>
We can no longer fetch code from ffffxxxx. We go bye bye.<br>
<br>
Fix is to NOT compile the pcibios into stage0, or to also decode it into stage2.<br>
<br>
ron<br>
<br>
</div></div><div><div></div><div class="Wj3C7c">--<br>
coreboot mailing list: <a href="mailto:coreboot@coreboot.org">coreboot@coreboot.org</a><br>
<a href="http://www.coreboot.org/mailman/listinfo/coreboot" target="_blank">http://www.coreboot.org/mailman/listinfo/coreboot</a><br>
</div></div></blockquote></div><br></div>