1
0
Fork 0

e100: convert to net_device_ops

Convert to new network device ops interface. Compile tested only.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
hifive-unleashed-5.1
Stephen Hemminger 2008-11-19 22:21:53 -08:00 committed by David S. Miller
parent 2e5c69228e
commit acc784263b
1 changed files with 16 additions and 11 deletions

View File

@ -2612,6 +2612,20 @@ static int e100_close(struct net_device *netdev)
return 0;
}
static const struct net_device_ops e100_netdev_ops = {
.ndo_open = e100_open,
.ndo_stop = e100_close,
.ndo_validate_addr = eth_validate_addr,
.ndo_set_multicast_list = e100_set_multicast_list,
.ndo_set_mac_address = e100_set_mac_address,
.ndo_change_mtu = e100_change_mtu,
.ndo_do_ioctl = e100_do_ioctl,
.ndo_tx_timeout = e100_tx_timeout,
#ifdef CONFIG_NET_POLL_CONTROLLER
.ndo_poll_controller = e100_netpoll,
#endif
};
static int __devinit e100_probe(struct pci_dev *pdev,
const struct pci_device_id *ent)
{
@ -2625,19 +2639,10 @@ static int __devinit e100_probe(struct pci_dev *pdev,
return -ENOMEM;
}
netdev->open = e100_open;
netdev->stop = e100_close;
netdev->netdev_ops = &e100_netdev_ops;
netdev->hard_start_xmit = e100_xmit_frame;
netdev->set_multicast_list = e100_set_multicast_list;
netdev->set_mac_address = e100_set_mac_address;
netdev->change_mtu = e100_change_mtu;
netdev->do_ioctl = e100_do_ioctl;
SET_ETHTOOL_OPS(netdev, &e100_ethtool_ops);
netdev->tx_timeout = e100_tx_timeout;
netdev->watchdog_timeo = E100_WATCHDOG_PERIOD;
#ifdef CONFIG_NET_POLL_CONTROLLER
netdev->poll_controller = e100_netpoll;
#endif
strncpy(netdev->name, pci_name(pdev), sizeof(netdev->name) - 1);
nic = netdev_priv(netdev);
@ -2845,7 +2850,7 @@ static pci_ers_result_t e100_io_error_detected(struct pci_dev *pdev, pci_channel
struct nic *nic = netdev_priv(netdev);
/* Similar to calling e100_down(), but avoids adapter I/O. */
netdev->stop(netdev);
e100_close(netdev);
/* Detach; put netif into a state similar to hotplug unplug. */
napi_enable(&nic->napi);