summaryrefslogtreecommitdiff
path: root/drivers/scsi/aacraid/src.c
diff options
context:
space:
mode:
authorRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>2017-05-10 19:39:43 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2017-06-13 03:47:59 +0300
commit6b24d425881792b16ccf2189b43d57b4aff2a4e6 (patch)
tree1085da5484e483abe996241449be895e053d36a4 /drivers/scsi/aacraid/src.c
parent144ecd41f0f43600f0c103cb6d0d2f1619d70e96 (diff)
downloadlinux-6b24d425881792b16ccf2189b43d57b4aff2a4e6.tar.xz
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>
Diffstat (limited to 'drivers/scsi/aacraid/src.c')
-rw-r--r--drivers/scsi/aacraid/src.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/drivers/scsi/aacraid/src.c b/drivers/scsi/aacraid/src.c
index 7b0410e0f569..f278a21c86db 100644
--- a/drivers/scsi/aacraid/src.c
+++ b/drivers/scsi/aacraid/src.c
@@ -704,22 +704,10 @@ static void aac_send_iop_reset(struct aac_dev *dev, int bled)
0, 0, 0, 0, 0, 0, &var,
&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);
- if (!bled && (dev->supplement_adapter_info.supported_options2 &
- AAC_OPTION_DOORBELL_RESET)) {
- src_writel(dev, MUnit.IDR, reset_mask);
- } else {
- src_writel(dev, MUnit.IDR, 0x100);
- }
+ src_writel(dev, MUnit.IDR, IOP_SRC_RESET_MASK);
+
msleep(30000);
}