<br><br>---------- Forwarded message ----------<br><span class="gmail_quote">From: <b class="gmail_sendername">Darmawan Salihun</b> <<a href="mailto:darmawan.salihun@gmail.com">darmawan.salihun@gmail.com</a>><br>Date: May 31, 2007 11:21 PM
<br>Subject: Re: [LinuxBIOS] Question about protect mode?<br>To: Juergen Beisert <<a href="mailto:juergen127@kreuzholzen.de">juergen127@kreuzholzen.de</a>><br><br></span><br>Hi Libo,<br><br><div><span class="q"><span class="gmail_quote">
On 5/31/07, <b class="gmail_sendername">Juergen Beisert</b> <<a href="mailto:juergen127@kreuzholzen.de" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">juergen127@kreuzholzen.de</a>> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br><br>On Thursday 31 May 2007 11:00, Yuning Feng wrote:<br>> To Xia-yin: Processor manual does help. Of course, explanation from<br>> people here is more specific.<br>><br>> 2007/5/30, Feng, Libo <<a href="mailto:Libo.Feng@amd.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">

Libo.Feng@amd.com</a>>:<br>> > Another question is BIOS ROM can attach to XBUS, LPC, someone told me,<br>> > even PCI, how dose the address forward to the location?<br>><br>> To Libo and Juergen: It seems not every board can do that. Would you
<br>> name some of them ?<br><br>Hmm, every board *must" do it. The CPU outputs the address 0xFFFFFFF0 and<br>awaits to read its first instruction. The external chipset (if not a SoC) is<br>responsible to generate a chip select signal to a device that contains this
<br>instruction(s) and to forward the "answer" from this device back to the CPU<br>data bus. So every board can do it, but maybe not all variants listed above.<br>Maybe only one of it, or maybe more than one of it. In the latter case you
<br>must select in a _chipset_specific_way_ where the device is connected that<br>contains the boot code. So you should not read processor's manual, you should<br>read chipset's manual instead (for the case they are separate devices. On
<br>SoCs they are combined in one silicon).<br></blockquote></span>If you don't know how the chipset can decode the memory access from the processor while in real <br>mode, you should read the "memory mapping" part of the chipset datasheet. In x86 platform, address range between 0xF_0000-0xF_FFFF ( segment 0xF000 -- real mode 16-bit) is aliased to address range just below 4Gb, 
i.e. 0xFFFF_0000 - 0xFFFF_FFFF. Therefore, while in real mode, the processor can still access the contents of 0xFFFF_FFF0 address by accessing address 0xF_FFF0 because both of them are the same (i.e. aliased). Read the description about PAM (Programmable Attribute Memory? -- i forgot the exact "long name" of the abbreviation) registers in Intel chipset datasheets. You should understand the concept with it, sooner or later ;-)
<br></div><span class="sg"><br>-- <br>-- Darmawan Salihun a.k.a Pinczakko<br>--------------------------------------------------------------------<br>-= Human knowledge belongs to the world =-
</span><br clear="all"><br>-- <br>-- Darmawan Salihun a.k.a Pinczakko<br>--------------------------------------------------------------------<br>-= Human knowledge belongs to the world =-