<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:arial, helvetica, sans-serif;font-size:10pt"><DIV style="FONT-SIZE: 10pt; FONT-FAMILY: arial, helvetica, sans-serif">
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"><BR>Hi,</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">I havew some doubts on what you mentioned regarding the flow.</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">...It is added inline.</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">Regards,</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">Viswesh</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"><BR>On Wed, Mar 26, 2008 at 11:47:56PM -0700, Viswesh S wrote:<BR>> > But why are you doing this anyway? Wouldn't it be easier to just<BR>> > look at the source code?<BR>> <BR>> [Viswesh] The source code doesnt give you the functional flow.<BR><BR>It does, but the source code flow is not obvious in v2.<BR><BR><BR>> Taking one example, if we look at entry32.inc, we cant see that the<BR>> next function is fpu_start.<BR><BR>No, but mainboard/*/*/Config.lb is also part of the source code.<BR>Think of it as a macro file that is processed to generate code.<BR><BR>Following mainboardinit entry32.inc there is mainboardinit<BR>cpu_reset.inc and then mainboardinit fpu_enable.inc.<BR><BR>Again, this design is in no way optimal and big improvements have<BR>been made in the new version 3 of coreboot. :)</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">[Viswesh] If we look at the disassembled code, the flow according to me is that, </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">from the reset_vector --> _start --> _protected_start --> _fpu_start.</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">And I dont understand the usage of the config.lb in the build.</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">Can somebody explain it.</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">//************** Config.lb for qemu-x86***********************</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">## Build our 16 bit and 32 bit coreboot entry code<BR>##<BR>mainboardinit cpu/x86/16bit/entry16.inc<BR>mainboardinit cpu/x86/32bit/entry32.inc<BR>ldscript /cpu/x86/16bit/entry16.lds<BR>ldscript /cpu/x86/32bit/entry32.lds</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">##<BR>## Build our reset vector (This is where coreboot is entered)<BR>##<BR>mainboardinit cpu/x86/16bit/reset16.inc <BR>ldscript /cpu/x86/16bit/reset16.lds </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">### Should this be in the northbridge code?<BR>mainboardinit arch/i386/lib/cpu_reset.inc</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">##<BR>## Include an id string (For safe flashing)<BR>##<BR>mainboardinit arch/i386/lib/id.inc<BR>ldscript /arch/i386/lib/id.lds</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">###<BR>### O.k. We aren't just an intermediary anymore!<BR>###</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">##<BR>## Setup RAM<BR>##<BR>mainboardinit cpu/x86/fpu/enable_fpu.inc<BR>mainboardinit ./auto.inc</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">*****************************   *********************************<BR>Also anybody has Top2005 Sw for linux ?</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">Regards,</DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"> </DIV>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">Viswesh<BR><BR>> If we dump the elf file we can actually see the next function which<BR>> is being called, one of the reasons why I looked at the assembly<BR>> code.<BR>> <BR>> I like to understand the assembly code also, but right now the<BR>> utmost priority is to understand the functional flow.<BR><BR>I understand. But look into <A href="http://config.lb/" target=_blank>Config.lb</A>, or even ask on this list, I<BR>think you will get faster results. :)<BR><BR><BR>> Suppose you modify the linux bios, using linux how do u flash it to<BR>> the chip ?<BR>> <BR>> Do you have in system code for it (or) any tool which does it for<BR>> you.<BR><BR>There is a tool called flashrom in util/flashrom/. Remember to erase<BR>before writing to flash when using it.<BR><BR><BR>> Is it  better that I write code to write the coreboot to the
 bios<BR>> chip.<BR><BR>The flashrom tool already supports a number of flash chips and<BR>chipsets, but if your hardware is unsupported or not working properly<BR>and you add code to make it work, please send a signed-off patch to<BR>the list. (See the Coding guidelines in the wiki.)<BR><BR><BR>//Peter<BR><BR><BR><BR>------------------------------<BR><BR>_______________________________________________<BR>coreboot mailing list<BR><A href="mailto:coreboot@coreboot.org" ymailto="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><BR>End of coreboot Digest, Vol 37, Issue 177<BR>*****************************************<BR></DIV><BR></DIV></div><br>
      <hr size=1>Looking for last minute shopping deals? <a href="http://us.rd.yahoo.com/evt=51734/*http://tools.search.yahoo.com/newsearch/category.php?category=shopping"> 
Find them fast with Yahoo! Search.</a></body></html>