<div dir="ltr">Hello Peter,<div><br></div><div>Did not understand... I must admit! As of my best interpretation SeaBIOS has 5 functions which makes BIOS legacy:</div><div><p class="MsoNormal"><font color="#000000"><span lang="EN-US">get and set variables<font face="symbol">, </font><font face="arial, helvetica, sans-serif">g</font></span><span lang="EN-US">et and set real time clock, r</span>eset.</font></p><p class="MsoNormal"><font color="#000000"><br></font></p><p class="MsoNormal"><font color="#000000">Or maybe, something changed.</font></p><p class="MsoNormal"><font color="#000000"><br></font></p><p class="MsoNormal"><font color="#000000">I went back, to inspect CSM code in SeaBIOS, and found the following:</font></p><p class="MsoNormal"><font color="#000000"><br></font></p><p class="MsoNormal"><font color="#000000">#</font></p><p class="MsoNormal"><font color="#000000"># General Features</font></p><p class="MsoNormal"><font color="#000000">#</font></p><p class="MsoNormal"><font color="#000000"># CONFIG_COREBOOT is not set</font></p><p class="MsoNormal"><font color="#000000"># CONFIG_QEMU is not set</font></p><p class="MsoNormal"><b><i><u><font color="#ff0000">CONFIG_CSM=y <<==================== set CSM ON</font></u></i></b></p><p class="MsoNormal"><font color="#000000"># CONFIG_QEMU_HARDWARE is not set</font></p><p class="MsoNormal"><font color="#000000">CONFIG_THREADS=y</font></p><p class="MsoNormal"><font color="#000000">CONFIG_RELOCATE_INIT=y</font></p><p class="MsoNormal"><font color="#000000">CONFIG_BOOTMENU=y</font></p><p class="MsoNormal"><font color="#000000">CONFIG_BOOTSPLASH=y</font></p><p class="MsoNormal"><font color="#000000">CONFIG_BOOTORDER=y</font></p><p class="MsoNormal"><font color="#000000">CONFIG_ENTRY_EXTRASTACK=y</font></p><p class="MsoNormal"><font color="#000000">CONFIG_MALLOC_UPPERMEMORY=y</font></p><p class="MsoNormal"><font color="#000000"></font></p><p class="MsoNormal"><font color="#000000">CONFIG_ROM_SIZE=0</font></p><div><br></div>

<p class="MsoNormal">Then make:</p><p class="MsoNormal"><br></p></div><div><div>  Compile checking out/src/hw/pcidevice.o</div><div>  Compile checking out/src/hw/ahci.o</div><div>  Compile checking out/src/hw/pvscsi.o</div><div>  Compile checking out/src/hw/usb-xhci.o</div><div>  Compile checking out/src/hw/usb-hub.o</div><div>  Compile checking out/src/hw/sdcard.o</div><div>  Compile checking out/src/fw/coreboot.o</div><div>  Compile checking out/src/fw/lzmadecode.o</div><div>  Compile checking out/src/fw/multiboot.o</div><div>  <b><i><u><font color="#ff0000">Compile checking out/src/fw/csm.o</font></u></i></b></div><div>  Compile checking out/src/fw/biostables.o</div><div>  Compile checking out/src/fw/paravirt.o</div><div>  Compile checking out/src/fw/shadow.o</div><div>  Compile checking out/src/fw/pciinit.o</div><div>  Compile checking out/src/fw/smm.o</div><div>  Compile checking out/src/fw/smp.o</div><div>  Compile checking out/src/fw/mtrr.o</div><div>  Compile checking out/src/fw/xen.o</div><div>  Compile checking out/src/fw/acpi.o</div><div>  Compile checking out/src/fw/mptable.o</div><div>  Compile checking out/src/fw/pirtable.o</div><div>  Compile checking out/src/fw/smbios.o</div></div><div><br></div><div>Where I see e820 table which is to be passed to OS, in order OS to understand what memory it can use. But I did not find explicitly these 5 functions. So I need a little help here. Where are these functions?</div><div><br></div><div>Now... How GRUB2 replaces all of these functionalities? I see what you said here (that GRUB2 is directly implemented into FW, thus skipping MBR), but who/what entity is replacing missing SeaBIOS functionalities?</div><div><br></div><div>Thank you,</div><div>Zoran</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Feb 11, 2017 at 2:18 PM, Peter Stuge <span dir="ltr"><<a href="mailto:peter@stuge.se" target="_blank">peter@stuge.se</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Zoran Stojsavljevic wrote:<br>
> crucial question from me: how Coreboot will work if instead SeaBIOS<br>
> GRUB2 is the payload chosen<br>
<br>
</span>Instead of SeaBIOS reading MBR, GRUB2 will read its configuration<br>
file and operate accordingly.<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
//Peter<br>
<br>
--<br>
coreboot mailing list: <a href="mailto:coreboot@coreboot.org">coreboot@coreboot.org</a><br>
<a href="https://www.coreboot.org/mailman/listinfo/coreboot" rel="noreferrer" target="_blank">https://www.coreboot.org/<wbr>mailman/listinfo/coreboot</a><br>
</div></div></blockquote></div><br></div>