scsi: aacraid: Rework IOP reset
authorRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
Wed, 10 May 2017 16:39:44 +0000 (09:39 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 13 Jun 2017 00:47:59 +0000 (20:47 -0400)
Reworked IOP reset to remove unneeded variable and created a helper
function to notify fw of an imminent IOP reset.

Signed-off-by: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
Reviewed-by: David Carroll <david.carroll@microsemi.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/aacraid/src.c

index f278a21..39ecb58 100644 (file)
@@ -694,15 +694,17 @@ static void aac_dump_fw_fib_iop_reset(struct aac_dev *dev)
                        0, 0, 0,  0, 0, 0, NULL, NULL, NULL, NULL, NULL);
 }
 
-static void aac_send_iop_reset(struct aac_dev *dev, int bled)
+static void aac_notify_fw_of_iop_reset(struct aac_dev *dev)
 {
-       u32 var, reset_mask;
+       aac_adapter_sync_cmd(dev, IOP_RESET_ALWAYS, 0, 0, 0, 0, 0, 0, NULL,
+                                               NULL, NULL, NULL, NULL);
+}
 
+static void aac_send_iop_reset(struct aac_dev *dev)
+{
        aac_dump_fw_fib_iop_reset(dev);
 
-       bled = aac_adapter_sync_cmd(dev, IOP_RESET_ALWAYS,
-                                   0, 0, 0, 0, 0, 0, &var,
-                                   &reset_mask, NULL, NULL, NULL);
+       aac_notify_fw_of_iop_reset(dev);
 
        aac_set_intx_mode(dev);
 
@@ -742,7 +744,7 @@ static int aac_src_restart_adapter(struct aac_dev *dev, int bled, u8 reset_type)
 
        switch (reset_type) {
        case IOP_HWSOFT_RESET:
-               aac_send_iop_reset(dev, bled);
+               aac_send_iop_reset(dev);
                /*
                 * Check to see if KERNEL_UP_AND_RUNNING
                 * Wait for the adapter to be up and running.
@@ -769,7 +771,7 @@ static int aac_src_restart_adapter(struct aac_dev *dev, int bled, u8 reset_type)
                }
                break;
        default:
-               aac_send_iop_reset(dev, bled);
+               aac_send_iop_reset(dev);
                break;
        }