Commit 80c7d8a5 authored by Raghava Aditya Renukunta's avatar Raghava Aditya Renukunta Committed by Martin K. Petersen

scsi: aacraid: Rework IOP reset

Reworked IOP reset to remove unneeded variable and created a helper
function to notify fw of an imminent IOP reset.
Signed-off-by: default avatarRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
Reviewed-by: default avatarDavid Carroll <david.carroll@microsemi.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 6b24d425
...@@ -694,15 +694,17 @@ static void aac_dump_fw_fib_iop_reset(struct aac_dev *dev) ...@@ -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); 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); aac_dump_fw_fib_iop_reset(dev);
bled = aac_adapter_sync_cmd(dev, IOP_RESET_ALWAYS, aac_notify_fw_of_iop_reset(dev);
0, 0, 0, 0, 0, 0, &var,
&reset_mask, NULL, NULL, NULL);
aac_set_intx_mode(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) ...@@ -742,7 +744,7 @@ static int aac_src_restart_adapter(struct aac_dev *dev, int bled, u8 reset_type)
switch (reset_type) { switch (reset_type) {
case IOP_HWSOFT_RESET: case IOP_HWSOFT_RESET:
aac_send_iop_reset(dev, bled); aac_send_iop_reset(dev);
/* /*
* Check to see if KERNEL_UP_AND_RUNNING * Check to see if KERNEL_UP_AND_RUNNING
* Wait for the adapter to be 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) ...@@ -769,7 +771,7 @@ static int aac_src_restart_adapter(struct aac_dev *dev, int bled, u8 reset_type)
} }
break; break;
default: default:
aac_send_iop_reset(dev, bled); aac_send_iop_reset(dev);
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment