aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/mpt2sas/mpt2sas_base.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/mpt2sas/mpt2sas_base.c')
-rw-r--r--drivers/scsi/mpt2sas/mpt2sas_base.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/scsi/mpt2sas/mpt2sas_base.c b/drivers/scsi/mpt2sas/mpt2sas_base.c
index f980b8822f92..b04ccad7d972 100644
--- a/drivers/scsi/mpt2sas/mpt2sas_base.c
+++ b/drivers/scsi/mpt2sas/mpt2sas_base.c
@@ -58,6 +58,7 @@
58#include <linux/sort.h> 58#include <linux/sort.h>
59#include <linux/io.h> 59#include <linux/io.h>
60#include <linux/time.h> 60#include <linux/time.h>
61#include <linux/aer.h>
61 62
62#include "mpt2sas_base.h" 63#include "mpt2sas_base.h"
63 64
@@ -1256,6 +1257,9 @@ mpt2sas_base_map_resources(struct MPT2SAS_ADAPTER *ioc)
1256 goto out_fail; 1257 goto out_fail;
1257 } 1258 }
1258 1259
1260 /* AER (Advanced Error Reporting) hooks */
1261 pci_enable_pcie_error_reporting(pdev);
1262
1259 pci_set_master(pdev); 1263 pci_set_master(pdev);
1260 1264
1261 if (_base_config_dma_addressing(ioc, pdev) != 0) { 1265 if (_base_config_dma_addressing(ioc, pdev) != 0) {
@@ -1311,6 +1315,7 @@ mpt2sas_base_map_resources(struct MPT2SAS_ADAPTER *ioc)
1311 ioc->chip_phys = 0; 1315 ioc->chip_phys = 0;
1312 ioc->pci_irq = -1; 1316 ioc->pci_irq = -1;
1313 pci_release_selected_regions(ioc->pdev, ioc->bars); 1317 pci_release_selected_regions(ioc->pdev, ioc->bars);
1318 pci_disable_pcie_error_reporting(pdev);
1314 pci_disable_device(pdev); 1319 pci_disable_device(pdev);
1315 return r; 1320 return r;
1316} 1321}
@@ -3547,6 +3552,7 @@ mpt2sas_base_free_resources(struct MPT2SAS_ADAPTER *ioc)
3547 ioc->pci_irq = -1; 3552 ioc->pci_irq = -1;
3548 ioc->chip_phys = 0; 3553 ioc->chip_phys = 0;
3549 pci_release_selected_regions(ioc->pdev, ioc->bars); 3554 pci_release_selected_regions(ioc->pdev, ioc->bars);
3555 pci_disable_pcie_error_reporting(pdev);
3550 pci_disable_device(pdev); 3556 pci_disable_device(pdev);
3551 return; 3557 return;
3552} 3558}