diff options
author | Alexander Beregalov <a.beregalov@gmail.com> | 2009-04-15 12:52:44 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-04-16 02:20:13 -0700 |
commit | e7090e347ad8bce0de35f9fe2b95e22e4ae8fbab (patch) | |
tree | 36ba6569ce4253d180feac1f68af37e7b67bd521 /drivers/net/ixp2000 | |
parent | c2775360e82760be3ad7339a7a1442c45c35b395 (diff) | |
download | op-kernel-dev-e7090e347ad8bce0de35f9fe2b95e22e4ae8fbab.zip op-kernel-dev-e7090e347ad8bce0de35f9fe2b95e22e4ae8fbab.tar.gz |
ixp2000/ixpdev: convert to net_device_ops
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ixp2000')
-rw-r--r-- | drivers/net/ixp2000/ixpdev.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/drivers/net/ixp2000/ixpdev.c b/drivers/net/ixp2000/ixpdev.c index d3bf2f0..2a0174b 100644 --- a/drivers/net/ixp2000/ixpdev.c +++ b/drivers/net/ixp2000/ixpdev.c @@ -270,6 +270,18 @@ static int ixpdev_close(struct net_device *dev) return 0; } +static const struct net_device_ops ixpdev_netdev_ops = { + .ndo_open = ixpdev_open, + .ndo_stop = ixpdev_close, + .ndo_start_xmit = ixpdev_xmit, + .ndo_change_mtu = eth_change_mtu, + .ndo_validate_addr = eth_validate_addr, + .ndo_set_mac_address = eth_mac_addr, +#ifdef CONFIG_NET_POLL_CONTROLLER + .ndo_poll_controller = ixpdev_poll_controller, +#endif +}; + struct net_device *ixpdev_alloc(int channel, int sizeof_priv) { struct net_device *dev; @@ -279,12 +291,7 @@ struct net_device *ixpdev_alloc(int channel, int sizeof_priv) if (dev == NULL) return NULL; - dev->hard_start_xmit = ixpdev_xmit; - dev->open = ixpdev_open; - dev->stop = ixpdev_close; -#ifdef CONFIG_NET_POLL_CONTROLLER - dev->poll_controller = ixpdev_poll_controller; -#endif + dev->netdev_ops = &ixpdev_netdev_ops; dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM; |