[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linuxbios
Subject:    [LinuxBIOS] Fwd:  Question about protect mode?
From:       "Darmawan Salihun" <darmawan.salihun () gmail ! com>
Date:       2007-05-31 16:22:24
Message-ID: 46893e740705310922l79aeb588i8913d780493ca18d () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


---------- Forwarded message ----------
From: Darmawan Salihun <darmawan.salihun@gmail.com>
Date: May 31, 2007 11:21 PM
Subject: Re: [LinuxBIOS] Question about protect mode?
To: Juergen Beisert <juergen127@kreuzholzen.de>


Hi Libo,

On 5/31/07, Juergen Beisert <juergen127@kreuzholzen.de> wrote:
>
> Hi,
>
> On Thursday 31 May 2007 11:00, Yuning Feng wrote:
> > To Xia-yin: Processor manual does help. Of course, explanation from
> > people here is more specific.
> >
> > 2007/5/30, Feng, Libo < Libo.Feng@amd.com>:
> > > Another question is BIOS ROM can attach to XBUS, LPC, someone told me,
> > > even PCI, how dose the address forward to the location?
> >
> > To Libo and Juergen: It seems not every board can do that. Would you
> > name some of them ?
>
> Hmm, every board *must" do it. The CPU outputs the address 0xFFFFFFF0 and
> awaits to read its first instruction. The external chipset (if not a SoC)
> is
> responsible to generate a chip select signal to a device that contains
> this
> instruction(s) and to forward the "answer" from this device back to the
> CPU
> data bus. So every board can do it, but maybe not all variants listed
> above.
> Maybe only one of it, or maybe more than one of it. In the latter case you
>
> must select in a _chipset_specific_way_ where the device is connected that
> contains the boot code. So you should not read processor's manual, you
> should
> read chipset's manual instead (for the case they are separate devices. On
> SoCs they are combined in one silicon).
>
If you don't know how the chipset can decode the memory access from the
processor while in real
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 ;-)

-- 
-- Darmawan Salihun a.k.a Pinczakko
--------------------------------------------------------------------
-= Human knowledge belongs to the world =-

-- 
-- Darmawan Salihun a.k.a Pinczakko
--------------------------------------------------------------------
-= Human knowledge belongs to the world =-

[Attachment #5 (text/html)]

<br><br>---------- Forwarded message ----------<br><span class="gmail_quote">From: <b \
class="gmail_sendername">Darmawan Salihun</b> &lt;<a \
href="mailto:darmawan.salihun@gmail.com">darmawan.salihun@gmail.com</a>&gt;<br>Date: \
May 31, 2007 11:21 PM <br>Subject: Re: [LinuxBIOS] Question about protect \
mode?<br>To: Juergen Beisert &lt;<a \
href="mailto:juergen127@kreuzholzen.de">juergen127@kreuzholzen.de</a>&gt;<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> &lt;<a \
href="mailto:juergen127@kreuzholzen.de" target="_blank" onclick="return \
top.js.OpenExtLink(window,event,this)">juergen127@kreuzholzen.de</a>&gt; \
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>&gt; To Xia-yin: Processor manual does help. Of \
course, explanation from<br>&gt; people here is more specific.<br>&gt;<br>&gt; \
2007/5/30, Feng, Libo &lt;<a href="mailto:Libo.Feng@amd.com" target="_blank" \
onclick="return top.js.OpenExtLink(window,event,this)">

Libo.Feng@amd.com</a>&gt;:<br>&gt; &gt; Another question is BIOS ROM can attach to \
XBUS, LPC, someone told me,<br>&gt; &gt; even PCI, how dose the address forward to \
the location?<br>&gt;<br>&gt; To Libo and Juergen: It seems not every board can do \
that. Would you <br>&gt; name some of them ?<br><br>Hmm, every board *must&quot; 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 \
&quot;answer&quot; 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&#39;s manual, you should<br>read chipset&#39;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&#39;t know how the chipset can \
decode the memory access from the processor while in real <br>mode, you should read \
the &quot;memory mapping&quot; 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 &quot;long name&quot; 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 =-



-- 
linuxbios mailing list
linuxbios@linuxbios.org
http://www.linuxbios.org/mailman/listinfo/linuxbios

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic