The error message is misleading, even for a SPEW, because
the slot is empty, it's NOT a bad ID (and the message is more confusing than helpful even in SPEW) Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Ronald G. Minnich <rminnich@gmail.com> Acked-by: Myles Watson <mylesgw@gmail.com> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5345 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
0c781b2694
commit
7355c7590b
|
@ -910,10 +910,14 @@ device_t pci_probe_dev(device_t dev, struct bus * bus, unsigned devfn)
|
||||||
dummy.path.pci.devfn = devfn;
|
dummy.path.pci.devfn = devfn;
|
||||||
id = pci_read_config32(&dummy, PCI_VENDOR_ID);
|
id = pci_read_config32(&dummy, PCI_VENDOR_ID);
|
||||||
/* Have we found something?
|
/* Have we found something?
|
||||||
* Some broken boards return 0 if a slot is empty.
|
* Some broken boards return 0 if a slot is empty, but
|
||||||
|
* the expected answer is 0xffffffff
|
||||||
*/
|
*/
|
||||||
if ((id == 0xffffffff) || (id == 0x00000000) ||
|
if (id == 0xffffffff) {
|
||||||
(id == 0x0000ffff) || (id == 0xffff0000)) {
|
return NULL;
|
||||||
|
}
|
||||||
|
if ((id == 0x00000000) || (id == 0x0000ffff) ||
|
||||||
|
(id == 0xffff0000)) {
|
||||||
printk(BIOS_SPEW, "%s, bad id 0x%x\n", dev_path(&dummy), id);
|
printk(BIOS_SPEW, "%s, bad id 0x%x\n", dev_path(&dummy), id);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue