summaryrefslogtreecommitdiffstats
path: root/src/drivers/net/davicom.c
diff options
context:
space:
mode:
authorMichael Brown2005-04-21 21:20:39 +0200
committerMichael Brown2005-04-21 21:20:39 +0200
commit614c39a8a40a32146793bd25906964659d90f95b (patch)
tree9acc979cce4658905d1bffd26d03058435c5d4c5 /src/drivers/net/davicom.c
parentTweaked API to minimise changes to existing drivers even further. (diff)
downloadipxe-614c39a8a40a32146793bd25906964659d90f95b.tar.gz
ipxe-614c39a8a40a32146793bd25906964659d90f95b.tar.xz
ipxe-614c39a8a40a32146793bd25906964659d90f95b.zip
Automatically updated with the program
#!/usr/bin/perl -w -pi -0777 use strict; ( my $type ) = /find_(\w+?)_boot_device/ or die "Could not find type\n"; ( my $disable ) = /\.disable\s*=\s*(\w+)/ or die "Could not locate disable\n"; s/(${disable}\s*\(\s*struct\s+nic\s+\*nic)(\s*\)\s*\{)(\s*)/${1}, struct ${type}_device \*${type} __unused${2}${3}nic_disable ( nic );${3}/s; s/(${disable}\s*\(\s*struct\s+nic\s+\*nic)(\s*\)\s*;)/${1}, struct ${type}_device \*${type}${2}/g; s/^\s*.disable\s*=\s*${disable}\s*,\s*?$//m; s/(_probe\s*\(\s*)struct\s+dev\s+\*dev/${1}struct nic \*nic/g; s/^\s*struct\s+nic\s+\*nic\s*=\s*nic_device\s*\(\s*dev\s*\)\s*;\s*?$//m; s/^(\s*)(nic->(ioaddr|irqno)\s*=\s*${type})/${1}${type}_fill_nic ( nic, ${type} );\n${1}${2}/m;
Diffstat (limited to 'src/drivers/net/davicom.c')
-rw-r--r--src/drivers/net/davicom.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/drivers/net/davicom.c b/src/drivers/net/davicom.c
index 4fef8f66..755a70e7 100644
--- a/src/drivers/net/davicom.c
+++ b/src/drivers/net/davicom.c
@@ -157,13 +157,13 @@ static int TxPtr;
/*********************************************************************/
static void whereami(const char *str);
static int read_eeprom(unsigned long ioaddr, int location, int addr_len);
-static int davicom_probe(struct dev *dev,struct pci_device *pci);
+static int davicom_probe(struct nic *nic,struct pci_device *pci);
static void davicom_init_chain(struct nic *nic); /* Sten 10/9 */
static void davicom_reset(struct nic *nic);
static void davicom_transmit(struct nic *nic, const char *d, unsigned int t,
unsigned int s, const char *p);
static int davicom_poll(struct nic *nic, int retrieve);
-static void davicom_disable(struct nic *nic);
+static void davicom_disable(struct nic *nic, struct pci_device *pci);
#ifdef DAVICOM_DEBUG
static void davicom_more(void);
#endif /* DAVICOM_DEBUG */
@@ -620,7 +620,8 @@ static int davicom_poll(struct nic *nic, int retrieve)
/*********************************************************************/
/* eth_disable - Disable the interface */
/*********************************************************************/
-static void davicom_disable ( struct nic *nic ) {
+static void davicom_disable ( struct nic *nic, struct pci_device *pci __unused ) {
+ nic_disable ( nic );
whereami("davicom_disable\n");
davicom_reset(nic);
@@ -655,8 +656,8 @@ static void davicom_irq(struct nic *nic __unused, irq_action_t action __unused)
/*********************************************************************/
/* eth_probe - Look for an adapter */
/*********************************************************************/
-static int davicom_probe ( struct dev *dev, struct pci_device *pci ) {
- struct nic *nic = nic_device ( dev );
+static int davicom_probe ( struct nic *nic, struct pci_device *pci ) {
+
unsigned int i;
whereami("davicom_probe\n");
@@ -669,6 +670,7 @@ static int davicom_probe ( struct dev *dev, struct pci_device *pci ) {
ioaddr = pci->ioaddr;
nic->irqno = 0;
+ pci_fill_nic ( nic, pci );
nic->ioaddr = pci->ioaddr;
/* wakeup chip */
@@ -703,7 +705,7 @@ static struct nic_operations davicom_operations = {
.poll = davicom_poll,
.transmit = davicom_transmit,
.irq = davicom_irq,
- .disable = davicom_disable,
+
};
static struct pci_id davicom_nics[] = {
@@ -714,6 +716,7 @@ PCI_ROM(0x1282, 0x9132, "davicom9132", "Davicom 9132"), /* Needs probably some f
};
static struct pci_driver davicom_driver =
- PCI_DRIVER ( "DAVICOM", davicom_nics, PCI_NO_CLASS );
+ PCI_DRIVER ( davicom_nics, PCI_NO_CLASS );
-BOOT_DRIVER ( "DAVICOM", find_pci_boot_device, davicom_driver, davicom_probe );
+DRIVER ( "DAVICOM", nic_driver, pci_driver, davicom_driver,
+ davicom_probe, davicom_disable );