bna: fix for clean fw re-initialization
authorRasesh Mody <rmody@brocade.com>
Thu, 14 Apr 2011 08:05:18 +0000 (08:05 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Apr 2011 20:39:44 +0000 (13:39 -0700)
commit79ea6c8966b861f80e77a14b2acf581563f3c83e
treed2a556b6e833a88519faca8e064725bdfabcbe5f
parentdd5030404695d81792a21cba575e02b21a2f275a
bna: fix for clean fw re-initialization

During a kernel crash, bna control path state machine and firmware do not
get a notification and hence are not cleanly shutdown. The registers
holding driver/IOC state information are not reset back to valid
disabled/parking values. This causes subsequent driver initialization
to hang during kdump kernel boot. This patch, during the initialization
of first PCI function, resets corresponding register when unclean shutown
is detect by reading chip registers. This will make sure that ioc/fw
gets clean re-initialization.

Signed-off-by: Debashis Dutt <ddutt@brocade.com>
Signed-off-by: Rasesh Mody <rmody@brocade.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bna/bfa_ioc.c
drivers/net/bna/bfa_ioc.h
drivers/net/bna/bfa_ioc_ct.c
drivers/net/bna/bfi.h