diff options
-rw-r--r-- | drivers/net/netxen/netxen_nic_init.c | 3 | ||||
-rw-r--r-- | drivers/net/netxen/netxen_nic_main.c | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/netxen/netxen_nic_init.c b/drivers/net/netxen/netxen_nic_init.c index 02f8d4b4db63..ba62411f3532 100644 --- a/drivers/net/netxen/netxen_nic_init.c +++ b/drivers/net/netxen/netxen_nic_init.c | |||
@@ -778,6 +778,9 @@ netxen_need_fw_reset(struct netxen_adapter *adapter) | |||
778 | if (NX_IS_REVISION_P2(adapter->ahw.revision_id)) | 778 | if (NX_IS_REVISION_P2(adapter->ahw.revision_id)) |
779 | return 1; | 779 | return 1; |
780 | 780 | ||
781 | if (adapter->need_fw_reset) | ||
782 | return 1; | ||
783 | |||
781 | /* last attempt had failed */ | 784 | /* last attempt had failed */ |
782 | if (NXRD32(adapter, CRB_CMDPEG_STATE) == PHAN_INITIALIZE_FAILED) | 785 | if (NXRD32(adapter, CRB_CMDPEG_STATE) == PHAN_INITIALIZE_FAILED) |
783 | return 1; | 786 | return 1; |
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c index 41cb0af4b556..1aca6260909a 100644 --- a/drivers/net/netxen/netxen_nic_main.c +++ b/drivers/net/netxen/netxen_nic_main.c | |||
@@ -2284,8 +2284,10 @@ netxen_check_health(struct netxen_adapter *adapter) | |||
2284 | } | 2284 | } |
2285 | 2285 | ||
2286 | state = NXRD32(adapter, NX_CRB_DEV_STATE); | 2286 | state = NXRD32(adapter, NX_CRB_DEV_STATE); |
2287 | if (state == NX_DEV_NEED_RESET) | 2287 | if (state == NX_DEV_NEED_RESET) { |
2288 | adapter->need_fw_reset = 1; | ||
2288 | goto detach; | 2289 | goto detach; |
2290 | } | ||
2289 | 2291 | ||
2290 | if (NX_IS_REVISION_P2(adapter->ahw.revision_id)) | 2292 | if (NX_IS_REVISION_P2(adapter->ahw.revision_id)) |
2291 | return 0; | 2293 | return 0; |