bnx2x: Recovery flow bug fixes
authorAriel Elior <ariele@broadcom.com>
Thu, 26 Jan 2012 06:01:52 +0000 (06:01 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 26 Jan 2012 18:39:52 +0000 (13:39 -0500)
commit95c6c6165eaf5a031bcf31606e081c72e4acdeb8
tree70af0b9194397ac380e735bb3d0f13f46946c292
parent889b9af34f986138eebebfe781567cb950b3a22b
bnx2x: Recovery flow bug fixes

1. Sample mcp pulse and mcp sequence in nic load instead of in init_one
as they may change by the time we want to use them.

2. Allow cnic to access device during nic load (by adding a new "LOADING" state
to recovery flow). This prevents the unnecessary cnic timeout which resulted
by cnic attempting to access because nic is loading, but being blocked because
of the Recovery state.

3. Issue 'fake' driver load command to mcp when last driver unloads to prevent
mcp from taking ownership. When recovery is complete unload fake driver to
allow mcp to initialize the hardware before first driver loads.

Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnx2x/bnx2x.h
drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c