scsi: mpt3sas: Handle fault during HBA initialization
authorSuganath Prabu <suganath-prabu.subramani@broadcom.com>
Sat, 3 Aug 2019 13:59:54 +0000 (09:59 -0400)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 8 Aug 2019 02:46:51 +0000 (22:46 -0400)
commit9c067c053f94d36006cd0a29cf02b0b6be54c6ca
treeda90b78d3fad3c171e6bf9fd11bcff82fc6fe9ee
parent3ac8e47bbf2dfada890396b2994fe2765afd8cef
scsi: mpt3sas: Handle fault during HBA initialization

During HBA initialization time, if handshake operation fails due to some
firmware fault then currently driver is terminating the HBA
initialization. It is possible that HBA may come up properly if diag reset
is issued.

So improvement is made in driver in such a way that before terminating the
HBA initialization, driver checks the IOC state and if IOC state is in
fault state then issue diag reset for once. If diag reset is successful
then continue with HBA initialization else terminate the HBA
initialization.

Signed-off-by: Suganath Prabu <suganath-prabu.subramani@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/mpt3sas/mpt3sas_base.c