-----Original Message----- From: coreboot-bounces+mansoor=iwavesystems.com@coreboot.org [mailto:coreboot-bounces+mansoor=iwavesystems.com@coreboot.org] On Behalf Of Peter Stuge Sent: Sunday, November 01, 2009 4:14 AM To: coreboot@coreboot.org Subject: Re: [coreboot] Error executing VGA ROM with coreboot
Mansoor wrote:
I have attached the YABEL output.
Thanks. I think it is helpful. Please follow Kevin's suggestions to find out more about what the ROM is trying to do.
Yes. I will do it
Even though coreboot does only the hardware initialization, it has to do a VGA rom init for payloads other than seabios?
VGA is often not very important for payloads, and option ROMs in general fundamentally require a BIOS, which coreboot does not, and shall not, offer. If a BIOS environment is needed, then SeaBIOS is the way to go.
I my case I was planning to use FILO as payload to boot Linux. FILO doesn't do any VGA init.
In theory it can, if libpayload has native support for your graphics hardware. Since this isn't the case, there is no init done. There exists only very few graphics drivers in libpayload, which would support the idea that graphics is not very important for payloads.
I don't think libpayload has support for my hardware
I think there are a few options that you can explore further. First, maybe the graphics driver in Linux has the ability to initialize hardware completely? Because Linux will be started pretty quickly with coreboot+FILO, the delay from power on until graphics enabled will not be very long even if it is postponed to Linux.
I tried this option. But it didn't initialize VGA
Second, you can use both SeaBIOS and FILO together. SeaBIOS supports booting using another payload file than itself in CBFS. Normally this is used as a last resort when there is no local storage or option ROM to boot from, but that behavior should be very easy to change in SeaBIOS, so that FILO is always used for booting.
Using multiple payloads will increase boot time, but if legacy VGA ROM initialization is a hard requirement then I'm afraid there is no substitute for a BIOS environment, such as provided by SeaBIOS.
Thanks for the detailed explanation. I am using this method as an alternative (coreboot loads SeaBIOS then SeaBIOS loads FILO, FILO loads Linux) now. And it works fine. I am using FILO because I need USB mass storage support. Extra boot time is the seaBIOS hardware initialization time... and I say it is negligible compared to the 20-30 sec delay of factory BIOS.
But, don't rule out the Linux graphics driver alternative. There exists at least one driver (for AMD Geode) which does this, one or several of the VIA hardware drivers may also be able to do it. Linux 2.6.31 got kernel modesetting support in the Intel framebuffer driver so there is a chance. Also, the Intel graphics drivers developers are very active in the Linux community, and maybe they can quickly add any features that are discovered to be missing at the moment.
//Peter
-- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
DISCLAIMER: This e-mail and any attachment (s) is for authorised use by the intended recipient (s) only. It may contain proprietary material, confidential information and/or be subject to the legal privilege of iWave Systems Technologies Private Limited. If you have received this message in error, please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from retaining, using, copying, alerting or disclosing the content of this message. Thank you for your co-operation.
------------------------------------------------------------------------------- DISCLAIMER: This e-mail and any attachment (s) is for authorised use by the intended recipient (s) only. It may contain proprietary material, confidential information and/or be subject to the legal privilege of iWave Systems Technologies Private Limited. If you have received this message in error, please notify the originator immediately. If you are not the intended recipient, you are notified that you are strictly prohibited from retaining, using, copying, alerting or disclosing the content of this message. Thank you for your co-operation. ------------------------------------------------------------------------------