[1/2] dmaengine: ioat: Drop redundant pci_enable_pcie_error_reporting()
Commit Message
From: Bjorn Helgaas <bhelgaas@google.com>
pci_enable_pcie_error_reporting() enables the device to send ERR_*
Messages. Since f26e58bf6f54 ("PCI/AER: Enable error reporting when AER is
native"), the PCI core does this for all devices during enumeration, so the
driver doesn't need to do it itself.
Remove the redundant pci_enable_pcie_error_reporting() call from the
driver. Also remove the corresponding pci_disable_pcie_error_reporting()
from the driver .remove() path.
Note that this only controls ERR_* Messages from the device. An ERR_*
Message may cause the Root Port to generate an interrupt, depending on the
AER Root Error Command register managed by the AER service driver.
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
---
drivers/dma/ioat/init.c | 6 ------
1 file changed, 6 deletions(-)
Comments
On 3/7/23 12:26 PM, Bjorn Helgaas wrote:
> From: Bjorn Helgaas <bhelgaas@google.com>
>
> pci_enable_pcie_error_reporting() enables the device to send ERR_*
> Messages. Since f26e58bf6f54 ("PCI/AER: Enable error reporting when AER is
> native"), the PCI core does this for all devices during enumeration, so the
> driver doesn't need to do it itself.
>
> Remove the redundant pci_enable_pcie_error_reporting() call from the
> driver. Also remove the corresponding pci_disable_pcie_error_reporting()
> from the driver .remove() path.
>
> Note that this only controls ERR_* Messages from the device. An ERR_*
> Message may cause the Root Port to generate an interrupt, depending on the
> AER Root Error Command register managed by the AER service driver.
>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Dave Jiang <dave.jiang@intel.com>
> ---
> drivers/dma/ioat/init.c | 6 ------
> 1 file changed, 6 deletions(-)
>
> diff --git a/drivers/dma/ioat/init.c b/drivers/dma/ioat/init.c
> index 5d707ff63554..6ca62edf47bd 100644
> --- a/drivers/dma/ioat/init.c
> +++ b/drivers/dma/ioat/init.c
> @@ -15,7 +15,6 @@
> #include <linux/workqueue.h>
> #include <linux/prefetch.h>
> #include <linux/dca.h>
> -#include <linux/aer.h>
> #include <linux/sizes.h>
> #include "dma.h"
> #include "registers.h"
> @@ -1380,15 +1379,11 @@ static int ioat_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> if (is_skx_ioat(pdev))
> device->version = IOAT_VER_3_2;
> err = ioat3_dma_probe(device, ioat_dca_enabled);
> -
> - if (device->version >= IOAT_VER_3_3)
> - pci_enable_pcie_error_reporting(pdev);
> } else
> return -ENODEV;
>
> if (err) {
> dev_err(dev, "Intel(R) I/OAT DMA Engine init failed\n");
> - pci_disable_pcie_error_reporting(pdev);
> return -ENODEV;
> }
>
> @@ -1411,7 +1406,6 @@ static void ioat_remove(struct pci_dev *pdev)
> device->dca = NULL;
> }
>
> - pci_disable_pcie_error_reporting(pdev);
> ioat_dma_remove(device);
> }
>
@@ -15,7 +15,6 @@
#include <linux/workqueue.h>
#include <linux/prefetch.h>
#include <linux/dca.h>
-#include <linux/aer.h>
#include <linux/sizes.h>
#include "dma.h"
#include "registers.h"
@@ -1380,15 +1379,11 @@ static int ioat_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
if (is_skx_ioat(pdev))
device->version = IOAT_VER_3_2;
err = ioat3_dma_probe(device, ioat_dca_enabled);
-
- if (device->version >= IOAT_VER_3_3)
- pci_enable_pcie_error_reporting(pdev);
} else
return -ENODEV;
if (err) {
dev_err(dev, "Intel(R) I/OAT DMA Engine init failed\n");
- pci_disable_pcie_error_reporting(pdev);
return -ENODEV;
}
@@ -1411,7 +1406,6 @@ static void ioat_remove(struct pci_dev *pdev)
device->dca = NULL;
}
- pci_disable_pcie_error_reporting(pdev);
ioat_dma_remove(device);
}