scsi: aacraid: Using single reset mask for IOP reset
The driver can now trigger IOP reset with a single reset mask. Removed code that retrieves a reset_mask from the firmware. 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
144ecd41f0
commit
6b24d42588
@ -2378,6 +2378,7 @@ struct revision
|
|||||||
#define SOFT_RESET_TIME 60
|
#define SOFT_RESET_TIME 60
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct aac_common
|
struct aac_common
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
@ -2488,7 +2489,9 @@ struct aac_hba_info {
|
|||||||
#define IOP_RESET_FW_FIB_DUMP 0x00000034
|
#define IOP_RESET_FW_FIB_DUMP 0x00000034
|
||||||
#define IOP_RESET 0x00001000
|
#define IOP_RESET 0x00001000
|
||||||
#define IOP_RESET_ALWAYS 0x00001001
|
#define IOP_RESET_ALWAYS 0x00001001
|
||||||
#define RE_INIT_ADAPTER 0x000000ee
|
#define RE_INIT_ADAPTER 0x000000ee
|
||||||
|
|
||||||
|
#define IOP_SRC_RESET_MASK 0x00000100
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Adapter Status Register
|
* Adapter Status Register
|
||||||
|
@ -704,22 +704,10 @@ static void aac_send_iop_reset(struct aac_dev *dev, int bled)
|
|||||||
0, 0, 0, 0, 0, 0, &var,
|
0, 0, 0, 0, 0, 0, &var,
|
||||||
&reset_mask, NULL, NULL, NULL);
|
&reset_mask, NULL, NULL, NULL);
|
||||||
|
|
||||||
if ((bled || var != 0x00000001) && !dev->doorbell_mask)
|
|
||||||
bled = -EINVAL;
|
|
||||||
else if (dev->doorbell_mask) {
|
|
||||||
reset_mask = dev->doorbell_mask;
|
|
||||||
bled = 0;
|
|
||||||
var = 0x00000001;
|
|
||||||
}
|
|
||||||
|
|
||||||
aac_set_intx_mode(dev);
|
aac_set_intx_mode(dev);
|
||||||
|
|
||||||
if (!bled && (dev->supplement_adapter_info.supported_options2 &
|
src_writel(dev, MUnit.IDR, IOP_SRC_RESET_MASK);
|
||||||
AAC_OPTION_DOORBELL_RESET)) {
|
|
||||||
src_writel(dev, MUnit.IDR, reset_mask);
|
|
||||||
} else {
|
|
||||||
src_writel(dev, MUnit.IDR, 0x100);
|
|
||||||
}
|
|
||||||
msleep(30000);
|
msleep(30000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user