diff options
Diffstat (limited to 'drivers/net/qlcnic/qlcnic_main.c')
-rw-r--r-- | drivers/net/qlcnic/qlcnic_main.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/net/qlcnic/qlcnic_main.c b/drivers/net/qlcnic/qlcnic_main.c index 5fd2abd1eb67..9eb0ced1ffab 100644 --- a/drivers/net/qlcnic/qlcnic_main.c +++ b/drivers/net/qlcnic/qlcnic_main.c | |||
@@ -371,6 +371,13 @@ static int qlcnic_set_mac(struct net_device *netdev, void *p) | |||
371 | return 0; | 371 | return 0; |
372 | } | 372 | } |
373 | 373 | ||
374 | static void qlcnic_vlan_rx_register(struct net_device *netdev, | ||
375 | struct vlan_group *grp) | ||
376 | { | ||
377 | struct qlcnic_adapter *adapter = netdev_priv(netdev); | ||
378 | adapter->vlgrp = grp; | ||
379 | } | ||
380 | |||
374 | static const struct net_device_ops qlcnic_netdev_ops = { | 381 | static const struct net_device_ops qlcnic_netdev_ops = { |
375 | .ndo_open = qlcnic_open, | 382 | .ndo_open = qlcnic_open, |
376 | .ndo_stop = qlcnic_close, | 383 | .ndo_stop = qlcnic_close, |
@@ -381,6 +388,7 @@ static const struct net_device_ops qlcnic_netdev_ops = { | |||
381 | .ndo_set_mac_address = qlcnic_set_mac, | 388 | .ndo_set_mac_address = qlcnic_set_mac, |
382 | .ndo_change_mtu = qlcnic_change_mtu, | 389 | .ndo_change_mtu = qlcnic_change_mtu, |
383 | .ndo_tx_timeout = qlcnic_tx_timeout, | 390 | .ndo_tx_timeout = qlcnic_tx_timeout, |
391 | .ndo_vlan_rx_register = qlcnic_vlan_rx_register, | ||
384 | #ifdef CONFIG_NET_POLL_CONTROLLER | 392 | #ifdef CONFIG_NET_POLL_CONTROLLER |
385 | .ndo_poll_controller = qlcnic_poll_controller, | 393 | .ndo_poll_controller = qlcnic_poll_controller, |
386 | #endif | 394 | #endif |
@@ -1446,7 +1454,7 @@ qlcnic_setup_netdev(struct qlcnic_adapter *adapter, | |||
1446 | SET_ETHTOOL_OPS(netdev, &qlcnic_ethtool_ops); | 1454 | SET_ETHTOOL_OPS(netdev, &qlcnic_ethtool_ops); |
1447 | 1455 | ||
1448 | netdev->features |= (NETIF_F_SG | NETIF_F_IP_CSUM | | 1456 | netdev->features |= (NETIF_F_SG | NETIF_F_IP_CSUM | |
1449 | NETIF_F_IPV6_CSUM | NETIF_F_GRO); | 1457 | NETIF_F_IPV6_CSUM | NETIF_F_GRO | NETIF_F_HW_VLAN_RX); |
1450 | netdev->vlan_features |= (NETIF_F_SG | NETIF_F_IP_CSUM | | 1458 | netdev->vlan_features |= (NETIF_F_SG | NETIF_F_IP_CSUM | |
1451 | NETIF_F_IPV6_CSUM); | 1459 | NETIF_F_IPV6_CSUM); |
1452 | 1460 | ||