aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/net/lcs.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390/net/lcs.c')
-rw-r--r--drivers/s390/net/lcs.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/drivers/s390/net/lcs.c b/drivers/s390/net/lcs.c
index 49c3bfa1afd7..083f787d260d 100644
--- a/drivers/s390/net/lcs.c
+++ b/drivers/s390/net/lcs.c
@@ -2101,6 +2101,20 @@ lcs_register_netdev(struct ccwgroup_device *ccwgdev)
2101/** 2101/**
2102 * lcs_new_device will be called by setting the group device online. 2102 * lcs_new_device will be called by setting the group device online.
2103 */ 2103 */
2104static const struct net_device_ops lcs_netdev_ops = {
2105 .ndo_open = lcs_open_device,
2106 .ndo_stop = lcs_stop_device,
2107 .ndo_get_stats = lcs_getstats,
2108 .ndo_start_xmit = lcs_start_xmit,
2109};
2110
2111static const struct net_device_ops lcs_mc_netdev_ops = {
2112 .ndo_open = lcs_open_device,
2113 .ndo_stop = lcs_stop_device,
2114 .ndo_get_stats = lcs_getstats,
2115 .ndo_start_xmit = lcs_start_xmit,
2116 .ndo_set_multicast_list = lcs_set_multicast_list,
2117};
2104 2118
2105static int 2119static int
2106lcs_new_device(struct ccwgroup_device *ccwgdev) 2120lcs_new_device(struct ccwgroup_device *ccwgdev)
@@ -2168,14 +2182,11 @@ lcs_new_device(struct ccwgroup_device *ccwgdev)
2168 goto out; 2182 goto out;
2169 card->dev = dev; 2183 card->dev = dev;
2170 card->dev->ml_priv = card; 2184 card->dev->ml_priv = card;
2171 card->dev->open = lcs_open_device; 2185 card->dev->netdev_ops = &lcs_netdev_ops;
2172 card->dev->stop = lcs_stop_device;
2173 card->dev->hard_start_xmit = lcs_start_xmit;
2174 card->dev->get_stats = lcs_getstats;
2175 memcpy(card->dev->dev_addr, card->mac, LCS_MAC_LENGTH); 2186 memcpy(card->dev->dev_addr, card->mac, LCS_MAC_LENGTH);
2176#ifdef CONFIG_IP_MULTICAST 2187#ifdef CONFIG_IP_MULTICAST
2177 if (!lcs_check_multicast_support(card)) 2188 if (!lcs_check_multicast_support(card))
2178 card->dev->set_multicast_list = lcs_set_multicast_list; 2189 card->dev->netdev_ops = &lcs_mc_netdev_ops;
2179#endif 2190#endif
2180netdev_out: 2191netdev_out:
2181 lcs_set_allowed_threads(card,0xffffffff); 2192 lcs_set_allowed_threads(card,0xffffffff);