On Wed, Dec 24, 2008 at 12:13 AM, Corey Osgood <span dir="ltr"><<a href="mailto:corey.osgood@gmail.com">corey.osgood@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Tue, Dec 23, 2008 at 11:59 PM, ron minnich <span dir="ltr"><<a href="mailto:rminnich@gmail.com" target="_blank">rminnich@gmail.com</a>></span> wrote:<br></div><div class="gmail_quote"><div class="Ih2E3d">
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div></div><div>On Tue, Dec 23, 2008 at 8:40 PM, Corey Osgood <<a href="mailto:corey.osgood@gmail.com" target="_blank">corey.osgood@gmail.com</a>> wrote:<br>
> John Kollasch just pointed out to me that it looks like the reason the cn700<br>
> is booting so slowly (>15min) could be that it's running out of flash. I've<br>
> also noticed this:<br>
><br>
> LAR: Attempting to open 'normal/stage2/segment0'.<br>
> LAR: Start 0xfff00000 len 0x100000<br>
> LAR: seen member normal/option_table@0xfff00000, size 932<br>
> LAR: seen member normal/initram/segment0@0xfff00400, size 6216<br>
> LAR: seen member normal/stage2/segment0@0xfff01ca0, size 1<br>
><br>
> With a 1MB flash part, so 0xfff00000 is the ROM. Is this how it's supposed<br>
> to work, and if not, how do we fix it?<br>
><br>
<br>
</div></div>I think the problem is you are not caching flash or anything else for<br>
that matter.</blockquote></div><div><br>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.</div>
</div></blockquote><div><br>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.<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="gmail_quote"><div><br>
</div><div class="Ih2E3d"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
I wonder if moving mtrr out of stage0 was the right move?<br>
</blockquote></div><div><br>The only other option AFAIK is to go back to ROMCC, CAR uses those MTRRs and enabling them breaks CAR.<br> </div><div class="Ih2E3d"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<br>
initram has to run from flash. It is execute in place. Stage2 is<br>
copied to dram.</blockquote></div><div><br>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).</div></div></blockquote>
<div><br>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?<br>
</div></div><br>Thanks,<br>Corey<br>