I'm trying to debug T440p's display problem, tested many times and also compared it with T420. Here are the results:
1, Run VGA Option ROMs+Legacy VGA text mode+VGA BIOS+SeaBIOS: T420: Everything works fine Can see SeaBIOS menu?: y Can see Linux/Windows bootloader? (the Manjaro's start screen and the Windows 10's spinning circle): y Can boot in Linux?: y Can boot in Windows?: y T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
2, libgfxinit+Legacy VGA text mode+SeaBIOS: T420: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: y Can boot in Linux?: y Can boot in Windows?: n T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
3, libgfxinit+Legacy VGA text mode+SeaBIOS: T420: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: y Can boot in Linux?: y Can boot in Windows?: n T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
4, libgfxinit+high resolution framebuffer+SeaBIOS: T420: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: y Can boot in Linux?: y Can boot in Windows?: n T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
5, libgfxinit+Legacy VGA text mode+VGA BIOS+SeaBIOS: T420: Can see SeaBIOS menu?: n Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n T440p: Can see SeaBIOS menu?: n Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
6, libgfxinit+high resolution framebuffer+VGA BIOS+SeaBIOS: T420: Can see SeaBIOS menu?: n Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: y T440p: Can see SeaBIOS menu?: n Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
So the conclusion is: Under the first setting everything works fine for the T420. But the current T440p's port always can't display Linux/Windows's bootloader, and in the end it can't boot in Windows by all means. Has anyone using the T440p successfully boot in Windows under SeaBIOS? Is this a problem with my hardware or a general problem?
Is it in order to boot Windows the VGA BIOS is a must? I was suprised under the 6th setting T420 can boot in Windows, but add the VGA BIOS while using the libgfxinit make the SeaBIOS menu can't be displayed. Could this be fixed?
Lastly, I want to debug future. I heard it might be hard to debug VGA BIOS or Windows... What logs should I get and how to get them? Using "sudo cbmem -c" the log ends after SeaBIOS booted the disk. Using "dmesg | grep VGA" there are not much infomation.
Hello Dalao,
On 16.03.20 09:23, Dalao via coreboot wrote:
1, Run VGA Option ROMs+Legacy VGA text mode+VGA BIOS+SeaBIOS:
this combination is flawed. It will run the VGA BIOS twice, once in coreboot and once in SeaBIOS. Generally, this only works by chance.
T420: Everything works fine Can see SeaBIOS menu?: y Can see Linux/Windows bootloader? (the Manjaro's start screen and the Windows 10's spinning circle): y Can boot in Linux?: y Can boot in Windows?: y T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
2, libgfxinit+Legacy VGA text mode+SeaBIOS: T420: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: y Can boot in Linux?: y Can boot in Windows?: n T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n
This is very odd. The software interface is 100% the same as in the T420 case. Are you sure you are testing the same bootloaders? If you test on- disk installations, maybe the T420 was installed in BIOS and the T440p in UEFI mode?
Same applies to all combinations without the VGA BIOS blob. If it works on one machine but not the other, the difference is most likely in your software (bootloader, OS...).
Can boot in Linux?: y Can boot in Windows?: n
3, libgfxinit+Legacy VGA text mode+SeaBIOS:
Wasn't this 2?
For systems from the last 10 years, Windows only needs the VBT, AIUI. Make sure it's added to your coreboot image.
Nico
this combination is flawed. It will run the VGA BIOS twice, once in coreboot and once in SeaBIOS. Generally, this only works by chance.
Oh thank you! I have changed to none now. BTW, could the source set it to none automatically if add the VGA BIOS? I have used this for months and don't know it's flawed... But the same setting none+VGA BIOS+SeaBIOS also not work for T440p to show bootloaders.
This is very odd. The software interface is 100% the same as in the T420 case. Are you sure you are testing the same bootloaders? If you test on-disk installations, maybe the T420 was installed in BIOS and the T440p in UEFI mode?
Same applies to all combinations without the VGA BIOS blob. If it works on one machine but not the other, the difference is most likely in your software (bootloader, OS...).
Yes, both are Manjaro with default GRUB bootloader. Both are installed in BIOS. I have swapped the disks between the two and tested, the result is the same. Could it be some issues with hardware? How to debug like get logs from libgfxinit/grub? I can pull the logs for you.
Wasn't this 2?
Yes that's the same, sorry for mistake.
For systems from the last 10 years, Windows only needs the VBT, AIUI. Make sure it's added to your coreboot image.
Yes it added. I see the option is on by default for both T420 and T440p.
2020年3月16日 17:38 来自 nico.h@gmx.de:
Hello Dalao,
On 16.03.20 09:23, Dalao via coreboot wrote:
1, Run VGA Option ROMs+Legacy VGA text mode+VGA BIOS+SeaBIOS:
this combination is flawed. It will run the VGA BIOS twice, once in coreboot and once in SeaBIOS. Generally, this only works by chance.
T420: Everything works fine Can see SeaBIOS menu?: y Can see Linux/Windows bootloader? (the Manjaro's start screen and the Windows 10's spinning circle): y Can boot in Linux?: y Can boot in Windows?: y T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n Can boot in Linux?: y Can boot in Windows?: n
2, libgfxinit+Legacy VGA text mode+SeaBIOS: T420: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: y Can boot in Linux?: y Can boot in Windows?: n T440p: Can see SeaBIOS menu?: y Can see Linux/Windows bootloader?: n
This is very odd. The software interface is 100% the same as in the T420 case. Are you sure you are testing the same bootloaders? If you test on- disk installations, maybe the T420 was installed in BIOS and the T440p in UEFI mode?
Same applies to all combinations without the VGA BIOS blob. If it works on one machine but not the other, the difference is most likely in your software (bootloader, OS...).
Can boot in Linux?: y Can boot in Windows?: n
3, libgfxinit+Legacy VGA text mode+SeaBIOS:
Wasn't this 2?
For systems from the last 10 years, Windows only needs the VBT, AIUI. Make sure it's added to your coreboot image.
Nico
Hi Dalao,
On 16.03.20 13:05, Dalao wrote:
this combination is flawed. It will run the VGA BIOS twice, once in coreboot and once in SeaBIOS. Generally, this only works by chance.
Oh thank you! I have changed to none now. BTW, could the source set it to none automatically if add the VGA BIOS? I have used this for months and don't know it's flawed... But the same setting none+VGA BIOS+SeaBIOS also not work for T440p to show bootloaders.
it defaults to "None" already. But Kconfig defaults are only applied on the first run. Once you saved a config and re-opened it, Kconfig can't tell anymore what is left to the default and what was set on purpose, so it treats everything as if it was set on purpose.
This is very odd. The software interface is 100% the same as in the T420 case. Are you sure you are testing the same bootloaders? If you test on-disk installations, maybe the T420 was installed in BIOS and the T440p in UEFI mode?
Same applies to all combinations without the VGA BIOS blob. If it works on one machine but not the other, the difference is most likely in your software (bootloader, OS...).
Yes, both are Manjaro with default GRUB bootloader. Both are installed in BIOS. I have swapped the disks between the two and tested, the result is the same. Could it be some issues with hardware? How to debug like get logs from libgfxinit/grub? I can pull the logs for you.
A common issue with GRUB, loaded from SeaBIOS, is that its configuration might expect a specific resolution (and the ability to ask the BIOS for it). With libgfxinit, the BIOS can't change the resolution. Maybe just try with the textmode framebuffer and without any `grub.cfg`. If that works, you can try to switch to the linear framebuffer.
Nico