diff options
-rw-r--r-- | drivers/net/ifb.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/ifb.c b/drivers/net/ifb.c index 124dac4532b2..e07d487f015a 100644 --- a/drivers/net/ifb.c +++ b/drivers/net/ifb.c | |||
@@ -126,6 +126,10 @@ static const struct net_device_ops ifb_netdev_ops = { | |||
126 | .ndo_validate_addr = eth_validate_addr, | 126 | .ndo_validate_addr = eth_validate_addr, |
127 | }; | 127 | }; |
128 | 128 | ||
129 | #define IFB_FEATURES (NETIF_F_NO_CSUM | NETIF_F_SG | NETIF_F_FRAGLIST | \ | ||
130 | NETIF_F_TSO_ECN | NETIF_F_TSO | NETIF_F_TSO6 | \ | ||
131 | NETIF_F_HIGHDMA | NETIF_F_HW_VLAN_TX) | ||
132 | |||
129 | static void ifb_setup(struct net_device *dev) | 133 | static void ifb_setup(struct net_device *dev) |
130 | { | 134 | { |
131 | /* Initialize the device structure. */ | 135 | /* Initialize the device structure. */ |
@@ -136,6 +140,9 @@ static void ifb_setup(struct net_device *dev) | |||
136 | ether_setup(dev); | 140 | ether_setup(dev); |
137 | dev->tx_queue_len = TX_Q_LIMIT; | 141 | dev->tx_queue_len = TX_Q_LIMIT; |
138 | 142 | ||
143 | dev->features |= IFB_FEATURES; | ||
144 | dev->vlan_features |= IFB_FEATURES; | ||
145 | |||
139 | dev->flags |= IFF_NOARP; | 146 | dev->flags |= IFF_NOARP; |
140 | dev->flags &= ~IFF_MULTICAST; | 147 | dev->flags &= ~IFF_MULTICAST; |
141 | dev->priv_flags &= ~IFF_XMIT_DST_RELEASE; | 148 | dev->priv_flags &= ~IFF_XMIT_DST_RELEASE; |