]> git.baikalelectronics.ru Git - kernel.git/commit
tg3: Fix TSO CAP for 5704 devs w / ASF enabled
authorMatt Carlson <mcarlson@broadcom.com>
Mon, 28 Nov 2011 09:41:03 +0000 (09:41 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Nov 2011 00:19:36 +0000 (19:19 -0500)
commit3d586faafc3c71a37f57efa5cc6771e99821dfed
treedfac2109239728c72265e34bdfe17b35d4b8896e
parent965ac5c0e7b246d814c988717a6152ffc693cfc9
tg3: Fix TSO CAP for 5704 devs w / ASF enabled

On the earliest TSO capable devices, TSO was accomplished through
firmware.  The TSO cannot coexist with ASF management firmware though.
The tg3 driver determines whether or not ASF is enabled by calling
tg3_get_eeprom_hw_cfg(), which checks a particular bit of NIC memory.
Commit b1c043fed9ffefa291f8a253c550c43861a9f057, entitled "tg3: Move
TSO_CAPABLE assignment", accidentally moved the code that determines
TSO capabilities earlier than the call to tg3_get_eeprom_hw_cfg().  As a
consequence, the driver was attempting to determine TSO capabilities
before it had all the data it needed to make the decision.

This patch fixes the problem by revisiting and reevaluating the decision
after tg3_get_eeprom_hw_cfg() is called.

Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/tg3.c