--- linux-work/drivers/net/3c59x.c-59xNETCON Tue Nov 27 22:58:17 2001 +++ linux-work/drivers/net/3c59x.c Fri Jan 4 11:27:07 2002 @@ -864,6 +864,16 @@ static int vortex_cards_found; +#ifdef HAVE_POLL_CONTROLLER +static void poll_vortex(struct net_device *dev) +{ + struct vortex_private *vp = (struct vortex_private *)dev->priv; + disable_irq(dev->irq); + (vp->full_bus_master_rx ? boomerang_interrupt:vortex_interrupt)(dev->irq,dev,NULL); + enable_irq(dev->irq); +} +#endif + #ifdef CONFIG_PM static int vortex_suspend (struct pci_dev *pdev, u32 state) @@ -1325,6 +1335,9 @@ dev->set_multicast_list = set_rx_mode; dev->tx_timeout = vortex_tx_timeout; dev->watchdog_timeo = (watchdog * HZ) / 1000; +#ifdef HAVE_POLL_CONTROLLER + dev->poll_controller = poll_vortex; +#endif if (pdev && vp->enable_wol) { vp->pm_state_valid = 1; pci_save_state(vp->pdev, vp->power_state);