NETIF_F_IP_CSUM
features &= ~(NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM);
priv->dev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_RXCSUM;
features &= ~(NETIF_F_IP_CSUM | NETIF_F_TSO);
dev->features |= NETIF_F_IP_CSUM | NETIF_F_SG;
(dev->features & NETIF_F_IP_CSUM) ? "en":"dis");
dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
dev->features |= NETIF_F_IP_CSUM | NETIF_F_SG;
dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM |
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM |
dev->features |= NETIF_F_SG | NETIF_F_IP_CSUM;
dev_features |= NETIF_F_IP_CSUM;
if (features & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)) {
NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM |
ndev->features |= NETIF_F_IP_CSUM |
if (unlikely(!(skb->dev->features & NETIF_F_IP_CSUM)))
ndev->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_SG |
priv->tsb_en = !!(wanted & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
net_dev->features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
netdev->hw_features = NETIF_F_IP_CSUM |
netdev->hw_enc_features = NETIF_F_IP_CSUM |
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG |
dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_SG |
dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_SG |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_SG |
features |= NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_RXCSUM;
(features & NETIF_F_IP_CSUM))
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
ndev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
| NETIF_F_IP_CSUM
lio->enc_dev_capability = NETIF_F_IP_CSUM
| NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM
lio->enc_dev_capability = NETIF_F_IP_CSUM
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
netdev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM |
netdev->hw_features |= NETIF_F_SG | NETIF_F_IP_CSUM |
netdev->features |= NETIF_F_SG | NETIF_F_IP_CSUM |
#define VLAN_FEAT (NETIF_F_SG | NETIF_F_IP_CSUM | TSO_FLAGS | \
netdev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM |
#define VLAN_FEAT (NETIF_F_SG | NETIF_F_IP_CSUM | TSO_FLAGS | \
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
netdev->hw_enc_features |= NETIF_F_IP_CSUM |
#define VLAN_FEAT (NETIF_F_SG | NETIF_F_IP_CSUM | TSO_FLAGS | \
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM |
#define GMAC_OFFLOAD_FEATURES (NETIF_F_SG | NETIF_F_IP_CSUM | \
ndev->hw_features = NETIF_F_RXCSUM | NETIF_F_IP_CSUM;
dev->features = NETIF_F_IP_CSUM;
netdev->hw_enc_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
net_dev->hw_features |= (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
if (changed & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)) {
enable = !!(features & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM));
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
!!(net_dev->features & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)));
ndev->features |= (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM
if (priv->ndev->features & NETIF_F_IP_CSUM)
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG |
dev->features |= NETIF_F_IP_CSUM | NETIF_F_SG |
if (dev->features & NETIF_F_IP_CSUM ||
#define HBG_SUPPORT_FEATURES (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | \
ndev->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM;
ndev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
netdev->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
netdev->hw_features = NETIF_F_SG | NETIF_F_HIGHDMA | NETIF_F_IP_CSUM |
netdev->hw_enc_features = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_SCTP_CRC |
cso_fts |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM;
NETIF_F_IP_CSUM | NETIF_F_HW_VLAN_CTAG_TX;
NETIF_F_HIGHDMA | NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM;
ndev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG;
netdev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
dev->features &= ~NETIF_F_IP_CSUM;
adapter->netdev->hw_features |= NETIF_F_IP_CSUM;
(NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)))
dev->features |= NETIF_F_IP_CSUM |
dev->hw_enc_features = NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM |
csum_offloads |= NETIF_F_IP_CSUM;
netdev->hw_features = NETIF_F_IP_CSUM |
netdev->features = NETIF_F_IP_CSUM |
dev->features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO;
features &= ~(NETIF_F_IP_CSUM | NETIF_F_TSO);
dev->features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
const netdev_features_t csums = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->features &= ~(NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM);
dev->hw_features &= ~(NETIF_F_IP_CSUM |
dev->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
if (features & NETIF_F_IP_CSUM)
netdev->hw_features |= (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM);
} else if (feat & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)) {
netdev->hw_features |= (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM);
} else if (feat & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)) {
if (features & NETIF_F_IP_CSUM)
netdev->hw_features = (NETIF_F_RXCSUM | NETIF_F_IP_CSUM |
netdev->hw_features = NETIF_F_RXCSUM | NETIF_F_IP_CSUM |
ndev->hw_features = (NETIF_F_RXCSUM | NETIF_F_IP_CSUM |
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG |
#define SKY2_VLAN_OFFLOADS (NETIF_F_IP_CSUM | NETIF_F_SG | NETIF_F_TSO)
dev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_SG | NETIF_F_TSO;
#define MTK_HW_FEATURES (NETIF_F_IP_CSUM | \
dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->hw_enc_features = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
netdev->hw_features |= NETIF_F_IP_CSUM;
netdev->hw_features |= NETIF_F_IP_CSUM;
NETIF_F_HW_TC | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->vlan_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG | NETIF_F_RXCSUM;
ndev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
ndev->features |= NETIF_F_IP_CSUM;
if (changed & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)) {
if (features & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM))
netdev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
if (lower_features & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM))
netdev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_SG |
dev->features & (NETIF_F_IP_CSUM | NETIF_F_SG) ?
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->features = NETIF_F_IP_CSUM | NETIF_F_SG | NETIF_F_HIGHDMA |
netdev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
if (edev->ndev->features & NETIF_F_IP_CSUM)
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
ndev->hw_enc_features = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
ndev->features |= NETIF_F_IP_CSUM | NETIF_F_SG;
features |= NETIF_F_RXCSUM | NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM |
NETIF_F_IP_CSUM |
netdev->features |= (NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_RXCSUM |
netdev->vlan_features |= (NETIF_F_SG | NETIF_F_IP_CSUM |
netdev->hw_enc_features = NETIF_F_IP_CSUM |
(NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM))))
rmnet_dev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->features |= NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
dev->hw_features |= NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM |
dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO;
NETIF_F_IP_CSUM | NETIF_F_HIGHDMA |
dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM |
dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
ndev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
net_dev->hw_enc_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
net_dev->hw_enc_features &= ~(NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM);
(NETIF_F_IP_CSUM | \
.offload_features = NETIF_F_IP_CSUM,
.offload_features = NETIF_F_IP_CSUM | NETIF_F_RXHASH | NETIF_F_NTUPLE,
.offload_features = (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
dev->hw_features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM;
dev->features = NETIF_F_IP_CSUM | NETIF_F_HIGHDMA;
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
ndev->features |= (NETIF_F_IP_CSUM | NETIF_F_RXCSUM);
ndev->hw_features |= (NETIF_F_IP_CSUM | NETIF_F_RXCSUM);
ndev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
netdev->hw_features |= NETIF_F_IP_CSUM;
netdev->hw_features = NETIF_F_IP_CSUM;
ndev->features = NETIF_F_IP_CSUM | NETIF_F_SG | NETIF_F_TSO |
ndev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG |
ndev->features = NETIF_F_IP_CSUM |
ndev->vlan_features = NETIF_F_IP_CSUM |
netdev->hw_features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM;
netdev->features = NETIF_F_IP_CSUM;
netdev->hw_features = NETIF_F_IP_CSUM | NETIF_F_SG |
NETIF_F_IP_CSUM;
netdev->features = NETIF_F_SG | NETIF_F_IP_CSUM |
ndev->features |= NETIF_F_IP_CSUM; /* Can checksum TCP/UDP over IPv4. */
ndev->features |= NETIF_F_IP_CSUM;
ndev->features |= NETIF_F_IP_CSUM;
#define NETVSC_SUPPORTED_HW_FEATURES (NETIF_F_RXCSUM | NETIF_F_IP_CSUM | \
net->hw_features |= NETIF_F_IP_CSUM;
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
if (changed & NETIF_F_IP_CSUM) {
if (dev->net->features & NETIF_F_IP_CSUM)
#define AQ_SUPPORT_FEATURE (NETIF_F_SG | NETIF_F_IP_CSUM |\
#define AQ_SUPPORT_HW_FEATURE (NETIF_F_SG | NETIF_F_IP_CSUM |\
#define AQ_SUPPORT_VLAN_FEATURE (NETIF_F_SG | NETIF_F_IP_CSUM |\
dev->net->features |= NETIF_F_SG | NETIF_F_IP_CSUM |
if (changed & NETIF_F_IP_CSUM) {
netdev->features |= NETIF_F_RXCSUM | NETIF_F_IP_CSUM | NETIF_F_SG |
netdev->hw_features = NETIF_F_RXCSUM | NETIF_F_IP_CSUM | NETIF_F_SG |
netdev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
dev->net->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
dev->net->hw_features = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
dev->net->features |= NETIF_F_IP_CSUM;
dev->net->hw_features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM;
if (features & NETIF_F_IP_CSUM)
dev->hw_features |= NETIF_F_IP_CSUM | NETIF_F_RXCSUM;
if ((dev->features & NETIF_F_IP_CSUM) &&
if ((dev->features & NETIF_F_IP_CSUM) &&
ndev->features |= NETIF_F_IP_CSUM;
ndev->features &= ~NETIF_F_IP_CSUM;
#define IWL_TX_CSUM_NETIF_FLAGS (NETIF_F_IPV6_CSUM | NETIF_F_IP_CSUM |\
features &= ~NETIF_F_IP_CSUM;
NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM |
netdev->features = NETIF_F_IP_CSUM | NETIF_F_RXCSUM |
ipv4_features |= NETIF_F_IP_CSUM;
if ((changed & NETIF_F_IP_CSUM)) {
rc = qeth_set_ipa_csum(card, features & NETIF_F_IP_CSUM,
changed ^= NETIF_F_IP_CSUM;
features &= ~NETIF_F_IP_CSUM;
restricted |= NETIF_F_IP_CSUM;
card->dev->hw_features |= NETIF_F_IP_CSUM;
card->dev->vlan_features |= NETIF_F_IP_CSUM;
NETIF_F_RXCSUM | NETIF_F_IP_CSUM;
NETIF_F_RXCSUM | NETIF_F_IP_CSUM;
dev->features |= NETIF_F_SG | NETIF_F_IP_CSUM;
#define NETIF_F_CSUM_MASK (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | \
return !!(features & NETIF_F_IP_CSUM);
f1 |= (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM);
f2 |= (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM);
features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
.features = NETIF_F_SG | NETIF_F_GSO_PARTIAL | NETIF_F_IP_CSUM |
if (lower_features & (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM))
netdev_features_t ip_csum_mask = NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM;
(features & (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM))) {
features &= ~(NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM);
!(features & NETIF_F_IP_CSUM)) {
if (features & (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM)) {
} else if (odev->features & (NETIF_F_HW_CSUM | NETIF_F_IP_CSUM)) {
rt->dst.dev->features & (NETIF_F_HW_CSUM | NETIF_F_IP_CSUM) &&
(NETIF_F_HW_CSUM | NETIF_F_IP_CSUM))));
#define MAC80211_SUPPORTED_FEATURES_TX (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | \