<div dir="ltr">Hi Zoran,<div><br></div><div>Thanks for your suggestions - it may not be vBIOS but it's most likely somewhere around there.</div><div><br></div><div>I updated the VBIOS from Coreboot (~2014) with the newest one from AMD (~2015) with no impact on the behavior.</div><div>At this point I think the Coreboot settings for the platform may cause this i.e. for some reason <b>vga_text</b> is chosen over <b>gfxterm</b> which is not even configured but barely exists.</div><div><br></div><div>I have though managed to improve the status of the <b>vga_text</b> mode. So GRUB2 was restarting when reaching the end of the screen. I traced this to the <b>screen_read_char</b> which is issued when the <b>inc_y</b> == ROWS (this call would break GRUB2). I didn't go even further with the debug though. I just clear the screen and set grub_curr_pos.y to 0 and by using set pager=1 I can browse with enter through all the output page by page. It's not ideal but it was fast and practical.</div><div><br></div><div>Linux though still doesn't boot. I am currently looking why the vga_text mode is selected over gfxterm which is not even configured properly.</div><div><br></div><div>Thanks,</div><div>Grigore</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 30, 2016 at 7:15 PM, Zoran Stojsavljevic <span dir="ltr"><<a href="mailto:zoran.stojsavljevic@gmail.com" target="_blank">zoran.stojsavljevic@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello Grigore,<div><br></div><div>Did not abandon you ("Dr. House" lookalike, same age, same attitude). I though about the issue... Gave it hard try/thought! At least, I have tried. And here is what I came with...</div><span class=""><div><br></div><div><div style="font-size:12.8px">> Differences on GRUB2 environment:</div><div style="font-size:12.8px">> AMI BIOS + <b><i><u><font color="#ff0000">GRUB2.02beta2-36ubuntu3.1</font></u></i></b> => terminal_output=<b>gfxterm</b>, see USB-SATA SSD as (<b>hd0</b>), (<b>hd0</b>, gpt0).., works</div><div style="font-size:12.8px">> both on USB2.0 and USB3.0.</div><div style="font-size:12.8px">> Coreboot + <b><i><u><font color="#ff0000">GRUB2.02beta3</font></u></i></b> => terminal_output=<b>vga_text</b>, see USB-SATA SSD as (<b>usb0</b>), (<b>usb0</b>, gpt0).., works only on <span style="font-size:12.8px">USB2.0.</span></div></div><div><br></div></span><div>So... Here are bullet points:</div><div>[1] Above: you are telling/writing to me that Coreboot has newest GRUB2 SW than Ubuntu 16.04 LTS, Linux ft3b-lc 4.4.0-31-generic??? Question to you: are you sure? Please, check again?</div><div>[2] <b><i><u><font color="#ff0000">VERY/CRITICALLY important:</font></u></i></b> Are you sure that in BOTH cases above you are using <b><i><u><font color="#ff0000">THE SAME vBIOS </font></u></i></b>component?</div><div>In other words, you should go to:  <a href="https://ami.com/products/bios-uefi-tools-and-utilities/bios-uefi-utilities/." target="_blank">https://ami.com/products/<wbr>bios-uefi-tools-and-utilities/<wbr>bios-uefi-utilities/.</a>.. And try to extract vBIOS out of your AMI BIOS you are alternately using to test... And replace/swap one (you are using currently) in Coreboot.</div><div><br></div><div>Good luck! :-)</div><div>Zoran</div><div>_______</div><div><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Nov 29, 2016 at 2:44 PM, Grigore Lupescu <span dir="ltr"><<a href="mailto:grigore@arista.com" target="_blank">grigore@arista.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hello Zoran,<div>First of all thank you very much for your feedback - any idea would be worth trying.<br><div><br></div><div>I am sorry about the mixup by putting the 3.13 commands there (it was 4.4 actually). I use TAB press to get the actual version on the SSD drive (4.4.0-31) and those exact commands. So my bad on the last email, these are the actual ones:</div><div><br></div><div><div style="font-size:12.8px">grub> set root=(hd0,gpt2)</div><div style="font-size:12.8px">grub> linux /boot/vmlinuz-4.4...-generic root=/dev/sda2</div><div style="font-size:12.8px">grub> initrd /boot/initrd.img-4.4...-generi<wbr>c</div><div style="font-size:12.8px">grub> boot</div></div><div><br></div><div>So I am trying to boot from an SSD with Linux connected to a USB port - why I am doing this ? :) because the board has a dedicated embedded style power supply and 1 SATA cable, hence even though I can connect the SSD directly I cannot power it - so I use a USB to SATA drive where I have the SSD plugged in (and legacy Ubuntu Linux x64 4.4 on it).</div><div><br></div><div>Below are the full details of the AMI BIOS, Linux OS, Coreboot I am trying to boot over Coreboot (latest). So looking at these ++ previous ones it looks like vBIOS is in both.</div><div><br></div><div><div>AMI BIOS 2.17.1246 Copyright 2015</div><div>Core Version 4.6.5.4</div><div>UEFI 2.3.1; PI 1.2</div><div>Project Version <font color="#ff0000">1ASNG 0.02 x64</font></div><div>Chipset->GFX Configuration</div><div>IGD VBIOS Version ATOMBIOSBK-AMD VERO15.042.000.002.0000000</div><div>Advanced->CPU Configuration</div><div>AGESA Version 1.0.0.5</div><div>terminal_output: <b>gfxterm</b></div><div><br></div><div>Ubuntu 16.04 LTS, Linux ft3b-lc 4.4.0-31-generic #50 Ubuntu SMP Wed Jul 13 UTC 2016 x86_64</div><div>GNU GRUB 2.02~beta2-36ubuntu3.1</div></div><div><br></div><div>Coreboot (latest branch)</div><span class="m_-2606225592461097335gmail-"><div><div style="font-size:12.8px">I have the latest Coreboot sources, have set config accordingly (e.g. CONFIG_MAINBOARD_SMBIOS_PRODUC<wbr>T_NAME="DB-FT3b-LC"...), getting an image on HDMI and the GRUB2 payload is executing. In GRUB2 payload I seem to have an overflow issue possibly related to the <b>vga_text</b> mode.</div></div></span><div style="font-size:12.8px"><span style="font-size:small">terminal_output: </span><b>vga_text</b><br></div><div style="font-size:12.8px"><div>GRUB 2.02 beta3</div><div><br></div><div>Differences on GRUB2 environment:</div><div>AMI BIOS + GRUB2.02beta2-36ubuntu3.1 => terminal_output=<b>gfxterm</b>, see USB-SATA SSD as (<b>hd0</b>), (<b>hd0</b>, gpt0).., works both on USB2.0 and USB3.0.</div><div>Coreboot + GRUB2.02beta3 => terminal_output=<b>vga_text</b>, see USB-SATA SSD as (<b>usb0</b>), (<b>usb0</b>, gpt0).., works only on USB2.0.</div></div><div><br></div><div>Thank you,</div></div><div>Grigore</div></div><div class="m_-2606225592461097335gmail-HOEnZb"><div class="m_-2606225592461097335gmail-h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 28, 2016 at 10:40 PM, Zoran Stojsavljevic <span dir="ltr"><<a href="mailto:zoran.stojsavljevic@gmail.com" target="_blank">zoran.stojsavljevic@gmail.com</a><wbr>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Grigore,<div><br></div><div>Here are my comments to what you wrote to me:</div><div class="gmail_extra"><br><div class="gmail_quote"><span>On Mon, Nov 28, 2016 at 7:59 PM, Grigore Lupescu <span dir="ltr"><<a href="mailto:grigore@arista.com" target="_blank">grigore@arista.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hello Zoran,<div><br></div><div>[1-3] I am using the latest Ubuntu 16.04 LTS x64 desktop, 4.4 kernel. </div></div></blockquote><div><br></div></span><div>Perfect. Got it. Good to know. 16.04 LTS support back-ports to kernel 4.4 APIs most of the newer features exceeding 4.4 version for some time (this is very important info to/for me, never mind).</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>[4] I don't know exactly if it's x64 or x86. I have no control over AMI BIOS since it's just a binary I flash into the SPI ROM, which supports the board.</div></div></blockquote><div><br></div></span><div>Even if it is a binary, you should be able to enter it (CMOS) pressing at the very beginning of the boot <esc> or <F2> (maybe <F1>, Lenovo 420T supports <F1>, as example), or simultaneously - alternately both of them, one after another (NOT both at the same time). Then you can read the BIOS version from system BIOS page. Maybe version says what is the architecture. Other that that, it is bloody hard to tell what BIOS (32 or 64) you have. It is easier if you do have UEFI BIOS, but you must have/gain access to EFI shell, which is another problem, another dimension.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>[5] I boot Linux using legacy mode (in AMI, the Linux was installed for legacy boot on the HDD/SSD which connects via USB - USBtoSATA)</div></div></blockquote><div><br></div></span><div>You see... BIOS is a beast. With BIOS, if you have already attached HDMI monitor, BIOS should/must detect this and record, and pass such info to OS, somehow (very long story). Regardless what your GRUB2 supports (or, at least, this is my naive understanding).</div><div><br></div><div>If your BIOS is a legacy one, guess who is doing this detection? Which part of BIOS?! I'll tell this secret (ONLY) to you: vBIOS! ;-)</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>[6] I'm not sure. So I have the following checked:</div><div>- Run VGA Option ROMs, Native Mode</div><div>- Add a VGA BIOS image -> 3rdparty/blobs.../VBIOS.bin</div><div>- Set framebuffer resolution (any, without this + above, I have no HDMI output)</div></div></blockquote><div><br></div></span><div>The secret, I'll whisper only to you again... You MUST add to Coreboot vBIOS as video component, because vBIOS will pass to Linux so-called VBT (the same it does above, being part of BIOS), where these info are recorded (Coreboot, no Coreboot, does NOT matter, but for Linux video, vBIOS component extremely DOES matter).</div><div><br></div><div>(for UEFI boot, this works completely differently... Just tiny note)</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>[7] It's the same one referenced from Coreboot in the external payloads - GRUB 2.02 beta3.</div></div></blockquote><div><br></div></span><div>I apologize. I made here a mistake. Forgot to mention - outdated Coreboot GRUB2 payload. Here is a naive exercise to be done:</div><div>Please, program back BIOS into flash and boot your system (Ubuntu 16.04). Please, stop in GRUB2, after BIOS, and inspect the Ubuntu 16.04 LTS GRUB2 data. What is the GRUB2 version?</div><div><br></div><div>And, as you have said: you are able (also) to execute in BIOS GRUB the following (?!):</div><span><div><div style="font-size:12.8px">grub> set root=(hd0,gpt2)</div><div style="font-size:12.8px">grub> linux /boot/vmlinuz-3.13.0-29-generi<wbr>c root=/dev/sda2</div><div style="font-size:12.8px">grub> initrd /boot/initrd.img-3.13.0-29-gen<wbr>eric</div><div style="font-size:12.8px">grub> boot</div></div><div><br></div></span><div>Can you do this with the kernel 4.4??? Exact the same (above) commands? And from where you do have 3.13? Also as entry in grub.cfg? How/from where? Or, maybe... You use different HDD/SSD for Coreboot purposes?!</div><div><br></div><div>And if you use the same HDD/SSD, how do you have two different kernels you are (after all) executing:</div><div>[A] Using GRUB2 as Coreboot payload as GRUB 2.02 beta3, executing kernel 3.13???</div><div>[B] Using GRUB2 (hidden behind MBR on the HDD/SSD) executing kernel 4.4???</div><div><br></div><div>I did not get out of these emails the complete picture, I admit... :-(</div><span><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>From your view where would the overflow / boot problems come from ?</div></div></blockquote><div><br></div></span><div>Still not able to answer this question, since I do not have clear understanding what you actually do? I am trying...</div><div><br></div><div>Thank you,</div><div>Zoran</div><div><div class="m_-2606225592461097335gmail-m_1056602135628268309h5"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Thank you,</div><div>Grigore</div></div><div class="m_-2606225592461097335gmail-m_1056602135628268309m_5891556375020024566gmail-HOEnZb"><div class="m_-2606225592461097335gmail-m_1056602135628268309m_5891556375020024566gmail-h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 28, 2016 at 6:31 PM, Zoran Stojsavljevic <span dir="ltr"><<a href="mailto:zoran.stojsavljevic@gmail.com" target="_blank">zoran.stojsavljevic@gmail.com</a><wbr>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hello Grigore,<div><br></div><div>I have here some dummy questions (forgive me for my ignorance), but I need to ask them just for the sake of curiosity (maybe, after all, we can get somewhere if I articulate questions in the right direction/right format for this problem):</div><span><div><br></div><div><span style="font-size:12.8px">> If I put a proprietary AMI BIOS, GRUB2 works without issue in gfxterm mode and boots Linux without issue.</span><br></div><div><span style="font-size:12.8px"><br></span></div></span><div><span style="font-size:12.8px">[1] What Linux architecture are you using (32 or 64)?</span></div><div><span style="font-size:12.8px">[2] Which Linux distro?</span></div><div><span style="font-size:12.8px">[3] Which kernel version?</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">If you put AMI BIOS, the following questions I would like to know:</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">[4] Are you using 32 or 64 BIOS?</span></div><div><span style="font-size:12.8px">[5] Which mode are you using for booting (legacy/CSM ON or UEFI/CSM OFF)?</span></div><div><span style="font-size:12.8px">[6] In the accordance with [5], what video component you have set with CMOS: vBIOS or GOP driver?</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Not sure, but it seems to me that you are using too old/outdated GRUB2 version (or maybe I am also mistaken)?</span></div><div><span style="font-size:12.8px">[7] Could you tell us, which GRUB2 version you are using?</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Thank you,</span></div><div><span style="font-size:12.8px">Zoran</span></div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="m_-2606225592461097335gmail-m_1056602135628268309m_5891556375020024566gmail-m_933562087446185231h5">On Mon, Nov 28, 2016 at 7:13 PM, Grigore Lupescu via coreboot <span dir="ltr"><<a href="mailto:coreboot@coreboot.org" target="_blank">coreboot@coreboot.org</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="m_-2606225592461097335gmail-m_1056602135628268309m_5891556375020024566gmail-m_933562087446185231h5"><div dir="ltr">Hello,<div><br></div><div>I am trying to run Linux through the GRUB2 payload. I am not tied to GRUB2 but it's the only payload that gives me HDMI output (board has no serial port) using Coreboot and AMD FT3B-LC.</div><div><br></div><div>I have the latest Coreboot sources, have set config accordingly (e.g. CONFIG_MAINBOARD_SMBIOS_PRODUC<wbr>T_NAME="DB-FT3b-LC"...), getting an image on HDMI and the GRUB2 payload is executing.</div><div>In GRUB2 payload I seem to have an overflow issue possibly related to the <b>vga_text</b> mode. If I put a proprietary AMI BIOS, GRUB2 works without issue in gfxterm mode and boots Linux without issue.</div><div><br></div><div>Using Coreboot every time the screen gets full of text, GRUB2 re-executes. If I though set the terminal_output to cbmemc then commands would execute but Linux still fails to execute - at the end GRUB2 would restart.</div><div><br></div><div>Also the GRUB2 payload on Coreboot does see the drive/files and attempts to execute - I looks like a GRUB2/Coreboot config/code problem.</div><div><br></div><div>I execute the below in GRUB2 (which work on AMI BIOS + GRUB2).</div><div><div>grub> set root=(hd0,gpt2)</div><div>grub> linux /boot/vmlinuz-3.13.0-29-generi<wbr>c root=/dev/sda2</div><div>grub> initrd /boot/initrd.img-3.13.0-29-gen<wbr>eric</div><div>grub> boot</div></div><div><br></div><div>1. Would anyone have any recommendation about the overflow in GRUB2 payload ? - related to Coreboot.</div><div>2. Any suggestions on booting Linux given this board's limitations on output (HDMI only) ?</div><div><br></div><div>Thank you,</div><div>Grigore</div></div>
<br></div></div><span class="m_-2606225592461097335gmail-m_1056602135628268309m_5891556375020024566gmail-m_933562087446185231HOEnZb"><font color="#888888">--<br>
coreboot mailing list: <a href="mailto:coreboot@coreboot.org" target="_blank">coreboot@coreboot.org</a><br>
<a href="https://www.coreboot.org/mailman/listinfo/coreboot" rel="noreferrer" target="_blank">https://www.coreboot.org/mailm<wbr>an/listinfo/coreboot</a><br></font></span></blockquote></div><br></div>
</blockquote></div><br></div>
</div></div></blockquote></div></div></div><br></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div></div></div></div>
</blockquote></div><br></div>