diff options
author | Ben Greear <greearb@candelatech.com> | 2012-03-06 04:42:04 -0500 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-03-17 04:03:16 -0400 |
commit | f43f313eb7c5f189ff4e27da6cc96ad2e613e333 (patch) | |
tree | f7d73bc23abb91af9c19fc125cf779c91b4e732e /drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |
parent | 89eaefb61dc9170237d95b844dd357338fc7225d (diff) |
ixgbe: Support sending custom Ethernet FCS.
Including bad FCS, used generate frames with bad FCS
to test other system's handling of RX of bad packets.
Signed-off-by: Ben Greear <greearb@candelatech.com>
Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/ixgbe/ixgbe_main.c')
-rw-r--r-- | drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index 167e898fbba6..986897bf2b83 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |||
@@ -6768,6 +6768,8 @@ static void ixgbe_tx_map(struct ixgbe_ring *tx_ring, | |||
6768 | tx_buffer_info->dma = dma; | 6768 | tx_buffer_info->dma = dma; |
6769 | 6769 | ||
6770 | tx_desc->read.buffer_addr = cpu_to_le64(dma + offset); | 6770 | tx_desc->read.buffer_addr = cpu_to_le64(dma + offset); |
6771 | if (unlikely(skb->no_fcs)) | ||
6772 | cmd_type &= ~(cpu_to_le32(IXGBE_ADVTXD_DCMD_IFCS)); | ||
6771 | tx_desc->read.cmd_type_len = cmd_type | cpu_to_le32(size); | 6773 | tx_desc->read.cmd_type_len = cmd_type | cpu_to_le32(size); |
6772 | tx_desc->read.olinfo_status = olinfo_status; | 6774 | tx_desc->read.olinfo_status = olinfo_status; |
6773 | 6775 | ||
@@ -7778,6 +7780,7 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev, | |||
7778 | netdev->vlan_features |= NETIF_F_SG; | 7780 | netdev->vlan_features |= NETIF_F_SG; |
7779 | 7781 | ||
7780 | netdev->priv_flags |= IFF_UNICAST_FLT; | 7782 | netdev->priv_flags |= IFF_UNICAST_FLT; |
7783 | netdev->priv_flags |= IFF_SUPP_NOFCS; | ||
7781 | 7784 | ||
7782 | if (adapter->flags & IXGBE_FLAG_SRIOV_ENABLED) | 7785 | if (adapter->flags & IXGBE_FLAG_SRIOV_ENABLED) |
7783 | adapter->flags &= ~(IXGBE_FLAG_RSS_ENABLED | | 7786 | adapter->flags &= ~(IXGBE_FLAG_RSS_ENABLED | |