GO_WINDOW(1);
}
-static void t595_disable ( struct nic *nic ) {
+static void t595_disable ( struct nic *nic, void *hwdev __unused ) {
t595_reset(nic);
return pkt_ok;
}
-static void amd8111e_disable(struct nic *nic)
+static void amd8111e_disable(struct nic *nic, void *hwdev __unused)
{
struct amd8111e_priv *lp = nic->priv_data;
return 0;
}
+static void
+bnx2_remove(struct nic *nic, void *hwdev __unused)
+{
+ bnx2_disable(nic);
+}
+
static struct pci_device_id bnx2_nics[] = {
PCI_ROM(0x14e4, 0x164a, "bnx2-5706", "Broadcom NetXtreme II BCM5706", 0),
PCI_ROM(0x14e4, 0x164c, "bnx2-5708", "Broadcom NetXtreme II BCM5708", 0),
PCI_DRIVER ( bnx2_driver, bnx2_nics, PCI_NO_CLASS );
-DRIVER ( "BNX2", nic_driver, pci_driver, bnx2_driver, bnx2_probe, bnx2_disable );
+DRIVER ( "BNX2", nic_driver, pci_driver, bnx2_driver, bnx2_probe, bnx2_remove );
/*
static struct pci_driver bnx2_driver __pci_driver = {
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, void *hwdev);
static void davicom_wait(unsigned int nticks);
static int phy_read(int);
static void phy_write(int, u16);
/*********************************************************************/
/* eth_disable - Disable the interface */
/*********************************************************************/
-static void davicom_disable ( struct nic *nic ) {
+static void davicom_disable ( struct nic *nic, void *hwdev __unused ) {
whereami("davicom_disable\n");
/**************************************************************************
DISABLE - Turn off ethernet interface
***************************************************************************/
-static void depca_disable ( struct nic *nic ) {
+static void depca_disable ( struct nic *nic, void *hwdev __unused ) {
depca_reset(nic);
STOP_DEPCA(nic->ioaddr);
/**************************************************************************
DISABLE - Turn off ethernet interface
***************************************************************************/
-static void dmfe_disable ( struct nic *nic __unused ) {
+static void dmfe_disable ( struct nic *nic __unused, void *hwdev __unused ) {
/* Reset & stop DM910X board */
outl(DM910X_RESET, BASE + DCR0);
udelay(5);
static void epic100_open(void);
static void epic100_init_ring(void);
-static void epic100_disable(struct nic *nic);
+static void epic100_disable(struct nic *nic, void *hwdev);
static int epic100_poll(struct nic *nic, int retrieve);
static void epic100_transmit(struct nic *nic, const char *destaddr,
unsigned int type, unsigned int len, const char *data);
}
-static void epic100_disable ( struct nic *nic __unused ) {
+static void epic100_disable ( struct nic *nic __unused, void *hwdev __unused ) {
/* Soft reset the chip. */
outl(GC_SOFT_RESET, genctl);
}
/**************************************************************************
NS8390_DISABLE - Turn off adapter
**************************************************************************/
-static void ns8390_disable ( struct nic *nic ) {
+static void ns8390_disable ( struct nic *nic, void *hwdev __unused ) {
ns8390_reset(nic);
}
return prism2_probe ( nic, hw );
}
-static void prism2_pci_disable ( struct nic *nic ) {
+static void prism2_pci_disable ( struct nic *nic, void *hwdev __unused ) {
prism2_disable ( nic );
}
return prism2_probe ( nic, hw );
}
-static void prism2_plx_disable ( struct nic *nic ) {
+static void prism2_plx_disable ( struct nic *nic, void *hwdev __unused ) {
prism2_disable ( nic );
}
unsigned int t, unsigned int s, const char *p);
static int sis900_poll(struct nic *nic, int retrieve);
-static void sis900_disable(struct nic *nic);
+static void sis900_disable(struct nic *nic, void *hwdev);
static void sis900_irq(struct nic *nic, irq_action_t action);
*/
static void
-sis900_disable ( struct nic *nic ) {
+sis900_disable ( struct nic *nic, void *hwdev __unused ) {
sis900_init(nic);
/**************************************************************************
DISABLE - Turn off ethernet interface
***************************************************************************/
-static void sundance_disable ( struct nic *nic __unused ) {
+static void sundance_disable ( struct nic *nic __unused, void *hwdev __unused) {
/* put the card in its initial state */
/* This function serves 3 purposes.
* This disables DMA and interrupts so we don't receive
/**************************************************************************
DISABLE - Turn off ethernet interface
***************************************************************************/
-static void tlan_disable ( struct nic *nic __unused ) {
+static void tlan_disable ( struct nic *nic __unused, void *hwdev __unused ) {
/* put the card in its initial state */
/* This function serves 3 purposes.
* This disables DMA and interrupts so we don't receive
static void tulip_transmit(struct nic *nic, const char *d, unsigned int t,
unsigned int s, const char *p);
static int tulip_poll(struct nic *nic, int retrieve);
-static void tulip_disable(struct nic *nic);
+static void tulip_disable(struct nic *nic, void *hwdev);
static void nway_start(struct nic *nic);
static void pnic_do_nway(struct nic *nic);
static void select_media(struct nic *nic, int startup);
/*********************************************************************/
/* eth_disable - Disable the interface */
/*********************************************************************/
-static void tulip_disable ( struct nic *nic ) {
+static void tulip_disable ( struct nic *nic, void *hwdev __unused ) {
whereami("tulip_disable\n");
/**************************************************************************
w89c840_disable - Turn off ethernet interface
***************************************************************************/
-static void w89c840_disable ( struct nic *nic ) {
+static void w89c840_disable ( struct nic *nic, void *hwdev __unused ) {
w89c840_reset(nic);
} \
static inline void \
_name ## _disable ( struct nic *nic, void *hwdev ) { \
- void ( * _unsafe_disable ) () = _disable; \
- _unsafe_disable ( nic, hwdev ); \
+ _disable ( nic, hwdev ); \
} \
static inline int \
_name ## _pci_legacy_probe ( struct pci_device *pci ) { \