Date: Wed, 3 Nov 2010 00:13:22 +0000 (UTC) From: Pyun YongHyeon <yongari@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/dev/bge if_bge.c if_bgereg.h Message-ID: <201011030013.oA30DmVa033635@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
yongari 2010-11-03 00:13:22 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_7)
sys/dev/bge if_bge.c if_bgereg.h
Log:
SVN rev 214715 on 2010-11-03 00:13:22Z by yongari
MFC r214087,214219,214251,214292:
r214087:
Add workaround for BCM5906 controller silicon bug. If device
receive two back-to-back send BDs with less than or equal to 8
total bytes then the device may hang. The two back-to-back send
BDs must be in the same frame for this failure to occur.
Thanks to davidch for detailed errata information.
Reviewed by: davidch
r214219:
Add workaround for BCM5906 A1 controller silicon bug. When
auto-negotiation results in half-duplex operation, excess collision
on the ethernet link may cause internal chip delays that may result
in subsequent valid frames being dropped due to insufficient
receive buffer resources. The workaround is to choose de-pipeline
method as a flow control decision for SDI. De-pipeline method
allows only 1 data in TxMbuf at a time such that a request to RDMA
from SDI is made only when TxMbuf is empty. Thanks for david for
providing detailed errata information.
r214251:
Apply the same workaround for SDI flow control used on BCM5906 A1
to BCM6906 A0/A2. This should fix a long standing BCM5906 A2 lockup
issues. Data sheet explicitly mentions BCM5906 A0, A1 and A2 use
de-pipelined mode on these revisions.
Special thanks to Buganini who tried all combinations of
experimental patches for more than 10 days.
Tested by: Buganini <buganini <> gmail dot com >
r214292:
Use bge_chipid to compare controller ids. r214251 incorrectly used
bge_chiprev.
Reported by: Buganini <buganini <> gmail dot com >
Revision Changes Path
1.198.2.59 +53 -2 src/sys/dev/bge/if_bge.c
1.73.2.29 +3 -0 src/sys/dev/bge/if_bgereg.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011030013.oA30DmVa033635>
