[TG3]: Fix 5761 PXEboot crash
authorMatt Carlson <mcarlson@broadcom.com>
Tue, 13 Nov 2007 05:07:01 +0000 (21:07 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 13 Nov 2007 05:07:01 +0000 (21:07 -0800)
commitc88864df27590b80fca4a991e0c257d1757cec41
treed9d2f437169fee2d45b4d051a84c1f47043645bc
parentbe85d4ad8ab69520e5ca4717c491a311c9eeae59
[TG3]: Fix 5761 PXEboot crash

When 5761 devices boot the machine using PXEboot, PXE leaves the device
active when it terminates.  The tg3 driver has code to detect this
condition and resets the device during initialization.  On 5761 devices,
device resets involve sending a driver state update message to the APE
on the 5761.  However, during this initialization stage, communications
to the APE registers have not yet been set up.  The driver then
dereferences a NULL pointer and crashes the machine.  The fix is to move
the APE register access setup earlier in the initialization code to
cover this condition.

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/tg3.c