Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Nov 2009 18:34:14 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org
Subject:   svn commit: r198920 - stable/7/sys/dev/fxp
Message-ID:  <200911041834.nA4IYEkk042244@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yongari
Date: Wed Nov  4 18:34:14 2009
New Revision: 198920
URL: http://svn.freebsd.org/changeset/base/198920

Log:
  MFC r197586:
    It seems some 82559ER controllers do not support Rx checksum
    offloading. Datasheet said nothing about the limitation of 82559ER
    except WOL. Explicitly disable Rx checksum offloading for
    controllers that is known to lack the capability.
  
    PR:	kern/138135
    Tested by:	Gooderum, Mark < mgooderum <> websense dot com >

Modified:
  stable/7/sys/dev/fxp/if_fxp.c
Directory Properties:
  stable/7/sys/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/sys/dev/fxp/if_fxp.c
==============================================================================
--- stable/7/sys/dev/fxp/if_fxp.c	Wed Nov  4 18:31:43 2009	(r198919)
+++ stable/7/sys/dev/fxp/if_fxp.c	Wed Nov  4 18:34:14 2009	(r198920)
@@ -632,8 +632,11 @@ fxp_attach(device_t dev)
 	}
 
 	/* For 82559 or later chips, Rx checksum offload is supported. */
-	if (sc->revision >= FXP_REV_82559_A0)
-		sc->flags |= FXP_FLAG_82559_RXCSUM;
+	if (sc->revision >= FXP_REV_82559_A0) {
+		/* 82559ER does not support Rx checksum offloading. */
+		if (sc->ident->devid != 0x1209)
+			sc->flags |= FXP_FLAG_82559_RXCSUM;
+	}
 	/*
 	 * Enable use of extended RFDs and TCBs for 82550
 	 * and later chips. Note: we need extended TXCB support



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911041834.nA4IYEkk042244>