mirror of https://gitee.com/openkylin/linux.git
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: 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>
This commit is contained in:
parent
6b24d42588
commit
80c7d8a5cf
|
@ -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)
|
||||||
|
|
||||||
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)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
aac_send_iop_reset(dev, bled);
|
aac_send_iop_reset(dev);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue