diff options
author | tuexen <tuexen@FreeBSD.org> | 2015-11-10 10:56:01 +0000 |
---|---|---|
committer | tuexen <tuexen@FreeBSD.org> | 2015-11-10 10:56:01 +0000 |
commit | 4ef66cf839047e9906f3b84752b98ce05851d261 (patch) | |
tree | 1cef7d3f919e3595376413da538aca68e6ee7b30 /sys | |
parent | 6c89db9850a45796846be9fdf5df6f5b0650914d (diff) | |
download | FreeBSD-src-4ef66cf839047e9906f3b84752b98ce05851d261.zip FreeBSD-src-4ef66cf839047e9906f3b84752b98ce05851d261.tar.gz |
Add support for SCTP checksum offloading for the 82580 controller
similar to the 82576 controller.
Tested with Intel i340 cards.
Reviewed by: erj@
MFC after: 1 week
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/e1000/if_igb.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/dev/e1000/if_igb.c b/sys/dev/e1000/if_igb.c index 696fec4..3fc1c1f 100644 --- a/sys/dev/e1000/if_igb.c +++ b/sys/dev/e1000/if_igb.c @@ -1258,7 +1258,8 @@ igb_init_locked(struct adapter *adapter) if (ifp->if_capenable & IFCAP_TXCSUM) { ifp->if_hwassist |= (CSUM_TCP | CSUM_UDP); #if __FreeBSD_version >= 800000 - if (adapter->hw.mac.type == e1000_82576) + if ((adapter->hw.mac.type == e1000_82576) || + (adapter->hw.mac.type == e1000_82580)) ifp->if_hwassist |= CSUM_SCTP; #endif } @@ -4681,8 +4682,9 @@ igb_initialize_receive_units(struct adapter *adapter) rxcsum |= E1000_RXCSUM_PCSD; #if __FreeBSD_version >= 800000 /* For SCTP Offload */ - if ((hw->mac.type == e1000_82576) - && (ifp->if_capenable & IFCAP_RXCSUM)) + if (((hw->mac.type == e1000_82576) || + (hw->mac.type == e1000_82580)) && + (ifp->if_capenable & IFCAP_RXCSUM)) rxcsum |= E1000_RXCSUM_CRCOFL; #endif } else { @@ -4690,7 +4692,8 @@ igb_initialize_receive_units(struct adapter *adapter) if (ifp->if_capenable & IFCAP_RXCSUM) { rxcsum |= E1000_RXCSUM_IPPCSE; #if __FreeBSD_version >= 800000 - if (adapter->hw.mac.type == e1000_82576) + if ((adapter->hw.mac.type == e1000_82576) || + (adapter->hw.mac.type == e1000_82580)) rxcsum |= E1000_RXCSUM_CRCOFL; #endif } else |