Ken.Fuchs@bench.com wrote:
Ken Fuchs wrote:
Since the video signal is being generated by the chipset, it seems that coreboot must do some video related chipset initialization prior to running testbios (util/vgabios).
Peter Stuge wrote:
Actually not, testbios can hopefully initialize the graphics using the factory VGA BIOS.
So util/vgabios is not a VGABIOS?
It's the userspace version of the x86emu + legacy bios emulation that coreboot uses to initialize VGA. Or, a rather old version of that.
If I design a board and port coreboot to it, there probably won't be a factory VGA BIOS, unless it is open source.
Sorry, I thought coreboot's util/vgabios and NONGNU VGABios
http://savannah.nongnu.org/projects/vgabios
or
http://www.nongnu.org/vgabios/
were the same for some odd reason ...
To get VGA output, you'd need to add hardware initialization for your graphics chip to something like nongnu's vgabios.
Maybe util/vgabios should be renamed to util/testvgabios to avoid confusion.
I agree. maybe testbios, or runoptionrom?
Furthermore, I need to support MS Windows on a new board, so that will require both SeaBIOS and VGABios. Has anyone done this yet on bare hardware (no qemu or similar emulation), using an open source VGABIOS as opposed to a factory VGA BIOS?
I don't think anyone did an open source vgabios for real hardware. It's not enormously hard to do, but you need a very good specification of the vga hardware, and I am not sure that exists for the graphics chip you're looking at. Maybe looking at the linux kernel drivers sheds some light on what is required. Basically, what the driver needs to do initially is set up the RAM (either DDR setup on external cards, or some means of using shared memory). That's the hairy part. Then set a default mode. That should not be too tricky.
It might be possible to run the vendor's option rom through our vgabios/testvgabios utility and have it log accesses to the hardware, to get a basic idea what needs to be done in which order. Timing issues are quite hard to find this way, though, and it's a nasty job producing good logs and then producing good code from that.
Unlike the "rest" of the bios image, the vga option rom is not owned by the bios vendor, but by the graphics chip vendor, normally. This may make things easier in getting the right to redistribute it.
I thought coreboot supported MS Windows via ADLO/BochsBIOS on more than one board and via SeaBIOS on at least one board. Am I wrong about this?
I remember reports saying it happened with at least 2 boards (one of them opteron, YhLu was involved there) with ADLO+BochsBIOS, but I never saw it running myself except in Qemu.