summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsruffell <sruffell@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2009-10-04 19:31:45 +0000
committersruffell <sruffell@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2009-10-04 19:31:45 +0000
commitcd21316c0b021efccbc1234b7d37a06c10624867 (patch)
tree0531ccd760869916dc7a9d90454283212a0636a8
parent6d5a8e1f5c2da6987d1ac388d934728fcd4834bf (diff)
wctc4xxp: Update to use struct net_device_ops.
Accomodates a change in the linux kernel network device interface. This is a backport from https://origsvn.digium.com/svn/dahdi/linux/trunk@6717 From: sruffell <sruffell@22b186d9-ae4d-0410-a2cf-b1b22c4d6fbd> git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.4@4686 5390a7c7-147a-4af0-8ec9-7488f05a26cb
-rw-r--r--kernel/wctc4xxp/base.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/kernel/wctc4xxp/base.c b/kernel/wctc4xxp/base.c
index 240dea8..a2f1514 100644
--- a/kernel/wctc4xxp/base.c
+++ b/kernel/wctc4xxp/base.c
@@ -730,6 +730,17 @@ wctc4xxp_net_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
return 0;
}
+#ifdef HAVE_NET_DEVICE_OPS
+const struct net_device_ops wctc4xxp_netdev_ops = {
+ .ndo_set_multicast_list = &wctc4xxp_net_set_multi,
+ .ndo_open = &wctc4xxp_net_up,
+ .ndo_stop = &wctc4xxp_net_down,
+ .ndo_start_xmit = &wctc4xxp_net_hard_start_xmit,
+ .ndo_get_stats = &wctc4xxp_net_get_stats,
+ .ndo_do_ioctl = &wctc4xxp_net_ioctl,
+};
+#endif
+
/**
* wctc4xxp_net_register - Register a new network interface.
* @wc: transcoder card to register the interface for.
@@ -761,14 +772,21 @@ wctc4xxp_net_register(struct wcdte *wc)
netdev->priv = wc;
# endif
memcpy(netdev->dev_addr, our_mac, sizeof(our_mac));
+
+# ifdef HAVE_NET_DEVICE_OPS
+ netdev->netdev_ops = &wctc4xxp_netdev_ops;
+# else
netdev->set_multicast_list = &wctc4xxp_net_set_multi;
netdev->open = &wctc4xxp_net_up;
netdev->stop = &wctc4xxp_net_down;
netdev->hard_start_xmit = &wctc4xxp_net_hard_start_xmit;
netdev->get_stats = &wctc4xxp_net_get_stats;
netdev->do_ioctl = &wctc4xxp_net_ioctl;
+# endif
+
netdev->promiscuity = 0;
netdev->flags |= IFF_NOARP;
+
# if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 24)
netdev->poll = &wctc4xxp_poll;
netdev->weight = 64;