]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC r216111:
authoryongari <yongari@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 7 Dec 2010 19:14:18 +0000 (19:14 +0000)
committeryongari <yongari@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 7 Dec 2010 19:14:18 +0000 (19:14 +0000)
commit30077550f9c992acc74734c22c9686dde64a649d
treebbf98e59e25a5c0f8cb4ccf0e1324a8c45ec6ed0
parent8669227ddf1789cc3d61e9a7a44c8380fa1d8bdf
MFC r216111:
  If RX lockup workaround is enabled, fxp(4) will periodically reset
  the controller to workaround silicon bug of i82557. Each reset will
  re-establish link which in turn triggers MII status change
  callback. The callback will try to reconfigure controller if the
  controller is not i82557 to enable flow-control. This caused
  endless link UP/DOWN when the workaround was enabled on non-i82557
  controller.

  To fix the issue, apply RX lockup workaround only for i82557.
  Previously it blindly checked undocumented EEPROM location such
  that it sometimes enabled the workaround for other controllers. At
  this time, only i82557 is known to have the silicon bug.
  This fixes a regression introduced in r215906 which enabled flow
  control support for all controllers except i82557.

  Reported by: Karl Denninger (karl <> denninger dot net)
  Tested by: Karl Denninger (karl <> denninger dot net)
  Approved by: re (kensmith)

git-svn-id: svn://svn.freebsd.org/base/stable/8@216264 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/dev/fxp/if_fxp.c