summaryrefslogtreecommitdiffstats
path: root/src/drivers/net/w89c840.c
diff options
context:
space:
mode:
authorMichael Brown2005-04-13 02:21:59 +0200
committerMichael Brown2005-04-13 02:21:59 +0200
commit3616de915e5006609a8872924f7cd148b227088d (patch)
treeb46098e25bb41cb22b92bbd4fe5df710b44f2aa1 /src/drivers/net/w89c840.c
parentAvoid compiler warnings. (diff)
downloadipxe-3616de915e5006609a8872924f7cd148b227088d.tar.gz
ipxe-3616de915e5006609a8872924f7cd148b227088d.tar.xz
ipxe-3616de915e5006609a8872924f7cd148b227088d.zip
Hand-finished
Diffstat (limited to 'src/drivers/net/w89c840.c')
-rw-r--r--src/drivers/net/w89c840.c39
1 files changed, 21 insertions, 18 deletions
diff --git a/src/drivers/net/w89c840.c b/src/drivers/net/w89c840.c
index 0d4c0567..fdc7f031 100644
--- a/src/drivers/net/w89c840.c
+++ b/src/drivers/net/w89c840.c
@@ -604,14 +604,32 @@ static void w89c840_irq(struct nic *nic __unused, irq_action_t action __unused)
}
}
+static struct nic_operations w89c840_operations = {
+ .connect = dummy_connect,
+ .poll = w89c840_poll,
+ .transmit = w89c840_transmit,
+ .irq = w89c840_irq,
+ .disable = w89c840_disable,
+};
+
+static struct pci_id w89c840_nics[] = {
+PCI_ROM(0x1050, 0x0840, "winbond840", "Winbond W89C840F"),
+PCI_ROM(0x11f6, 0x2011, "compexrl100atx", "Compex RL100ATX"),
+};
+
+static struct pci_driver w89c840_driver =
+ PCI_DRIVER ( "W89C840F", w89c840_nics, PCI_NO_CLASS );
+
/**************************************************************************
w89c840_probe - Look for an adapter, this routine's visible to the outside
***************************************************************************/
static int w89c840_probe ( struct dev *dev ) {
-
struct nic *nic = nic_device ( dev );
-
struct pci_device *p = pci_device ( dev );
+
+ if ( ! find_pci_device ( p, &w89c840_driver ) )
+ return 0;
+
u16 sum = 0;
int i, j;
unsigned short value;
@@ -698,14 +716,7 @@ static int w89c840_probe ( struct dev *dev ) {
}
/* point to NIC specific routines */
-static struct nic_operations w89c840_operations;
-static struct nic_operations w89c840_operations = {
- .connect = dummy_connect,
- .poll = w89c840_poll,
- .transmit = w89c840_transmit,
- .irq = w89c840_irq,
- .disable = w89c840_disable,
-}; nic->nic_op = &w89c840_operations;
+ nic->nic_op = &w89c840_operations;
w89c840_reset(nic);
@@ -947,12 +958,4 @@ static void init_ring(void)
}
-static struct pci_id w89c840_nics[] = {
-PCI_ROM(0x1050, 0x0840, "winbond840", "Winbond W89C840F"),
-PCI_ROM(0x11f6, 0x2011, "compexrl100atx", "Compex RL100ATX"),
-};
-
-static struct pci_driver w89c840_driver =
- PCI_DRIVER ( "W89C840F", w89c840_nics, PCI_NO_CLASS );
-
BOOT_DRIVER ( "W89C840F", w89c840_probe );