Hi
I tried again, this time with SeaBIOS instead of GRUB2 as the primary payload, and with CoreInfo as a secondary payload. As above, I selected "Use native graphics initialization" under "Devices" within `make nconfig`. (See attached .config .)
The result was the same as above: the backlight came on, but there was nothing displayed on the screen.
I would not be too surprised if native graphic init is invalid for Nehalem, since looks like a rough copy of ivy/sandy bridge...
(A quick look at the code tells me computing PLL divisors is too rough to be right in all cases. When it is too much out range for a display a lit up black screen is typically all you get...)
I do think you are probably right about this issue (i.e. nothing being displayed on the screen) being due to a failure to initialise the graphics properly, and I am open to further attempts to overcome the issue, as my time allows.
One option is to extract the option rom from vendor bios and use that for init.
Another is to fix up that native graphic init.
Last option is hook up libgfxinit, an alternative Intel display init code written in ada/spark, which might set up display correctly...
Is there anyone on the list who has Coreboot working on an X201 who would be willing to share their .config file, so that I might see how they succeeded where I am failing?
Thanks!
Kind regards
On 23/03/2017, Arthur Heymans arthur@aheymans.xyz wrote:
I tried again, this time with SeaBIOS instead of GRUB2 as the primary payload, and with CoreInfo as a secondary payload. As above, I selected "Use native graphics initialization" under "Devices" within `make nconfig`. (See attached .config .)
The result was the same as above: the backlight came on, but there was nothing displayed on the screen.
I would not be too surprised if native graphic init is invalid for Nehalem, since looks like a rough copy of ivy/sandy bridge...
(A quick look at the code tells me computing PLL divisors is too rough to be right in all cases. When it is too much out range for a display a lit up black screen is typically all you get...)
Interesting. Thank you very much for looking into this.
I wonder if this is a regression? The wiki states, "VGA Option ROM (optional): you need it if you want graphics in SeaBIOS but most payloads (e.g. GRUB2) work just fine without it (text mode or corebootfb mode)".
That statement resulted from the following edits:
GNUtoo in 2013: https://www.coreboot.org/index.php?title=Board:lenovo/x201&diff=prev&...
GNUtoo in 2013: https://www.coreboot.org/index.php?title=Board:lenovo/x201&diff=prev&...
phcoder in 2013: https://www.coreboot.org/index.php?title=Board:lenovo/x201&diff=prev&...
phcoder in 2014: https://www.coreboot.org/index.php?title=Board:lenovo/x201&diff=next&...
Kl3 in 2015: https://www.coreboot.org/index.php?title=Board:lenovo/x201&diff=next&...
So, it would seem that during 2013-2015, native graphics init became operational within Coreboot for the X201. So, if it was working then, but isn't working now, that would seem to indicate a regression. I have CC'd the people who I understand are the authors of those commits. I would be grateful if anyone can shed light on this :)
One option is to extract the option rom from vendor bios and use that for init.
True. I was hoping to avoid this, but you are right that I should give it a go (at least, to rule out whether any other issues are causing the blank screen).
Another is to fix up that native graphic init.
That is beyond my present skill level, I fear ;)
Last option is hook up libgfxinit, an alternative Intel display init code written in ada/spark, which might set up display correctly...
Nice. I will look into that when I get a chance. It might take me a while. I haven't built an Ada toolchain before. Would be great if it works, though!
Is there anyone on the list who has Coreboot working on an X201 who would be willing to share their .config file, so that I might see how they succeeded where I am failing?
This question still stands, especially for those I have CC'd, who seem to have been successful with Coreboot and native graphics initialization on the X201 :)