[coreboot] v3 stage2 running from flash

Corey Osgood corey.osgood at gmail.com
Wed Dec 24 07:02:39 CET 2008


On Wed, Dec 24, 2008 at 12:13 AM, Corey Osgood <corey.osgood at gmail.com>wrote:

> On Tue, Dec 23, 2008 at 11:59 PM, ron minnich <rminnich at gmail.com> wrote:
>
>> On Tue, Dec 23, 2008 at 8:40 PM, Corey Osgood <corey.osgood at gmail.com>
>> wrote:
>> > John Kollasch just pointed out to me that it looks like the reason the
>> cn700
>> > is booting so slowly (>15min) could be that it's running out of flash.
>> I've
>> > also noticed this:
>> >
>> > LAR: Attempting to open 'normal/stage2/segment0'.
>> > LAR: Start 0xfff00000 len 0x100000
>> > LAR: seen member normal/option_table at 0xfff00000, size 932
>> > LAR: seen member normal/initram/segment0 at 0xfff00400, size 6216
>> > LAR: seen member normal/stage2/segment0 at 0xfff01ca0, size 1
>> >
>> > With a 1MB flash part, so 0xfff00000 is the ROM. Is this how it's
>> supposed
>> > to work, and if not, how do we fix it?
>> >
>>
>> I think the problem is you are not caching flash or anything else for
>> that matter.
>
>
> What should I be doing where? I can enable, disable, or make the shadow ram
> dance like a monkey (yeah, Via hardware's got some odd features), but it
> makes no real difference in the boot speed.
>

Sorry if this came off as rude, it was supposed to be a joke. I'm still
confused on caching though, where/how it should be done, I'm trying to find
how it's done on geode and coming up empty handed.


>
>> I wonder if moving mtrr out of stage0 was the right move?
>>
>
> The only other option AFAIK is to go back to ROMCC, CAR uses those MTRRs
> and enabling them breaks CAR.
>
>
>>
>> initram has to run from flash. It is execute in place. Stage2 is
>> copied to dram.
>
>
> Is the whole flash copied to dram once, or are the segments copied as their
> needed? LAR is saying it's opening the segments directly from flash
> (0xfff00000).
>

Nevermind that question, I just (finally) found the code that handles that,
and that is how it works, the segment is loaded from the ROM right before
it's run. Is there any advantage/disadvantage to doing it that way instead
of copying the whole LARball once and walking on RAM?

Thanks,
Corey
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20081224/8ee36c03/attachment.html>


More information about the coreboot mailing list