svn commit: r290641 - head/sys/dev/e1000

Michael Tuexen tuexen at FreeBSD.org
Tue Nov 10 10:55:59 UTC 2015


Author: tuexen
Date: Tue Nov 10 10:55:57 2015
New Revision: 290641
URL: https://svnweb.freebsd.org/changeset/base/290641

Log:
  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

Modified:
  head/sys/dev/e1000/if_igb.c

Modified: head/sys/dev/e1000/if_igb.c
==============================================================================
--- head/sys/dev/e1000/if_igb.c	Tue Nov 10 10:49:26 2015	(r290640)
+++ head/sys/dev/e1000/if_igb.c	Tue Nov 10 10:55:57 2015	(r290641)
@@ -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 adap
 		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 adap
 		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


More information about the svn-src-head mailing list