[coreboot] SeaBIOS and hp dl145g3

Kevin O'Connor kevin at koconnor.net
Thu Apr 30 02:43:04 CEST 2009


On Wed, Apr 29, 2009 at 04:53:13PM +0200, samuel wrote:
> Hi Kevin,
> 
> I have tried Seabios on my hp dl145 g3 (the patches from mondrian) and
> it works really well now
> I was able to load the vga rom and i have output on the screen.

Great!

> One single problem... It doesn't seem to find the sata controller...
> 
> bootlog with coreboot and seabios:
> http://merlin.ugent.be/~samuel/dl145g3/corebootwithseabios.log

There isn't much SeaBIOS info in that log - can you recompile with
CONFIG_DEBUG_LEVEL set to 6?

> 
> lspci -vnn : http://merlin.ugent.be/~samuel/dl145g3/info/lspci-vnn.txt
> 
> and the original patch from mondrian to add support for the dl145g3 to filo:
> http://merlin.ugent.be/~samuel/dl145g3/patch/filo_dl145_sata.patch
> 
> It looks rather simple but I don't see what i have to change in
> seabios to support the device.
> 
> The pci id (0x104 is already in pci_ids.h of seabios) so i would think
> it should just work. Myles thought it could be related to the fact
> that his sata interface of this mainboard does not support a legacy
> IDE interface mode.
> 
> You have any ideas how i could quickly add support for the hp dl145 g3
> to SeaBIOS??

The equivalent patch in SeaBIOS would look like:

--- a/src/ata.c
+++ b/src/ata.c
@@ -841,7 +845,8 @@ ata_init()
     int count=0;
     int bdf, max;
     foreachpci(bdf, max) {
-        if (pci_config_readw(bdf, PCI_CLASS_DEVICE) != PCI_CLASS_STORAGE_IDE)
+        u16 class = pci_config_readw(bdf, PCI_CLASS_DEVICE);
+        if (class != PCI_CLASS_STORAGE_IDE && class != PCI_CLASS_STORAGE_RAID)
             continue;
         if (count >= ARRAY_SIZE(ATA.channels))
             break;


-Kevin




More information about the coreboot mailing list