diff options
| author | Michael Brown | 2011-11-11 22:30:50 +0100 |
|---|---|---|
| committer | Michael Brown | 2011-11-11 22:32:09 +0100 |
| commit | a05b89ef454d3eba2de00f75dd7a78c68b3cfdf5 (patch) | |
| tree | 70bbb9e0a06a92c16f515cd20b110621b69d6e7b /src | |
| parent | [getopt] Accept "--" as an end-of-options marker (diff) | |
| download | ipxe-a05b89ef454d3eba2de00f75dd7a78c68b3cfdf5.tar.gz ipxe-a05b89ef454d3eba2de00f75dd7a78c68b3cfdf5.tar.xz ipxe-a05b89ef454d3eba2de00f75dd7a78c68b3cfdf5.zip | |
[undi] Ensure that native drivers are tried before the UNDI PCI driver
Suggested-by: Alessandro Salvatori <sandr8@gmail.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/arch/i386/drivers/net/undi.c | 2 | ||||
| -rw-r--r-- | src/include/ipxe/pci.h | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/arch/i386/drivers/net/undi.c b/src/arch/i386/drivers/net/undi.c index 34fd09562..ad655620d 100644 --- a/src/arch/i386/drivers/net/undi.c +++ b/src/arch/i386/drivers/net/undi.c @@ -140,7 +140,7 @@ static struct pci_device_id undipci_nics[] = { PCI_ROM ( 0xffff, 0xffff, "undipci", "UNDI (PCI)", 0 ), }; -struct pci_driver undipci_driver __pci_driver = { +struct pci_driver undipci_driver __pci_driver_fallback = { .ids = undipci_nics, .id_count = ( sizeof ( undipci_nics ) / sizeof ( undipci_nics[0] ) ), .probe = undipci_probe, diff --git a/src/include/ipxe/pci.h b/src/include/ipxe/pci.h index 960454d69..520c8a027 100644 --- a/src/include/ipxe/pci.h +++ b/src/include/ipxe/pci.h @@ -343,6 +343,9 @@ struct pci_driver { /** Declare a PCI driver */ #define __pci_driver __table_entry ( PCI_DRIVERS, 01 ) +/** Declare a fallback PCI driver */ +#define __pci_driver_fallback __table_entry ( PCI_DRIVERS, 02 ) + #define PCI_BUS( busdevfn ) ( ( (busdevfn) >> 8 ) & 0xff ) #define PCI_SLOT( busdevfn ) ( ( (busdevfn) >> 3 ) & 0x1f ) #define PCI_FUNC( busdevfn ) ( ( (busdevfn) >> 0 ) & 0x07 ) |
