Message ID | 20230307201625.879567-1-helgaas@kernel.org (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | bus: mhi: host: pci_generic: Drop redundant pci_enable_pcie_error_reporting() | expand |
On 3/7/2023 1:16 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> Looks sane to me. Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
On Tue, Mar 07, 2023 at 02:16:25PM -0600, 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> Reviewed-by: Manivannan Sadhasivam <mani@kernel.org> Thanks, Mani > --- > drivers/bus/mhi/host/pci_generic.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c > index f39657f71483..6e13c43a84d1 100644 > --- a/drivers/bus/mhi/host/pci_generic.c > +++ b/drivers/bus/mhi/host/pci_generic.c > @@ -8,7 +8,6 @@ > * Copyright (C) 2020 Linaro Ltd <loic.poulain@linaro.org> > */ > > -#include <linux/aer.h> > #include <linux/delay.h> > #include <linux/device.h> > #include <linux/mhi.h> > @@ -903,11 +902,9 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) > mhi_pdev->pci_state = pci_store_saved_state(pdev); > pci_load_saved_state(pdev, NULL); > > - pci_enable_pcie_error_reporting(pdev); > - > err = mhi_register_controller(mhi_cntrl, mhi_cntrl_config); > if (err) > - goto err_disable_reporting; > + return err; > > /* MHI bus does not power up the controller by default */ > err = mhi_prepare_for_power_up(mhi_cntrl); > @@ -941,8 +938,6 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) > mhi_unprepare_after_power_down(mhi_cntrl); > err_unregister: > mhi_unregister_controller(mhi_cntrl); > -err_disable_reporting: > - pci_disable_pcie_error_reporting(pdev); > > return err; > } > @@ -965,7 +960,6 @@ static void mhi_pci_remove(struct pci_dev *pdev) > pm_runtime_get_noresume(&pdev->dev); > > mhi_unregister_controller(mhi_cntrl); > - pci_disable_pcie_error_reporting(pdev); > } > > static void mhi_pci_shutdown(struct pci_dev *pdev) > -- > 2.25.1 >
On Tue, Mar 07, 2023 at 02:16:25PM -0600, 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> Amended the commit message to fix a checkpatch warning and applied to mhi-next! Thanks, Mani > --- > drivers/bus/mhi/host/pci_generic.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c > index f39657f71483..6e13c43a84d1 100644 > --- a/drivers/bus/mhi/host/pci_generic.c > +++ b/drivers/bus/mhi/host/pci_generic.c > @@ -8,7 +8,6 @@ > * Copyright (C) 2020 Linaro Ltd <loic.poulain@linaro.org> > */ > > -#include <linux/aer.h> > #include <linux/delay.h> > #include <linux/device.h> > #include <linux/mhi.h> > @@ -903,11 +902,9 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) > mhi_pdev->pci_state = pci_store_saved_state(pdev); > pci_load_saved_state(pdev, NULL); > > - pci_enable_pcie_error_reporting(pdev); > - > err = mhi_register_controller(mhi_cntrl, mhi_cntrl_config); > if (err) > - goto err_disable_reporting; > + return err; > > /* MHI bus does not power up the controller by default */ > err = mhi_prepare_for_power_up(mhi_cntrl); > @@ -941,8 +938,6 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) > mhi_unprepare_after_power_down(mhi_cntrl); > err_unregister: > mhi_unregister_controller(mhi_cntrl); > -err_disable_reporting: > - pci_disable_pcie_error_reporting(pdev); > > return err; > } > @@ -965,7 +960,6 @@ static void mhi_pci_remove(struct pci_dev *pdev) > pm_runtime_get_noresume(&pdev->dev); > > mhi_unregister_controller(mhi_cntrl); > - pci_disable_pcie_error_reporting(pdev); > } > > static void mhi_pci_shutdown(struct pci_dev *pdev) > -- > 2.25.1 >
diff --git a/drivers/bus/mhi/host/pci_generic.c b/drivers/bus/mhi/host/pci_generic.c index f39657f71483..6e13c43a84d1 100644 --- a/drivers/bus/mhi/host/pci_generic.c +++ b/drivers/bus/mhi/host/pci_generic.c @@ -8,7 +8,6 @@ * Copyright (C) 2020 Linaro Ltd <loic.poulain@linaro.org> */ -#include <linux/aer.h> #include <linux/delay.h> #include <linux/device.h> #include <linux/mhi.h> @@ -903,11 +902,9 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) mhi_pdev->pci_state = pci_store_saved_state(pdev); pci_load_saved_state(pdev, NULL); - pci_enable_pcie_error_reporting(pdev); - err = mhi_register_controller(mhi_cntrl, mhi_cntrl_config); if (err) - goto err_disable_reporting; + return err; /* MHI bus does not power up the controller by default */ err = mhi_prepare_for_power_up(mhi_cntrl); @@ -941,8 +938,6 @@ static int mhi_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) mhi_unprepare_after_power_down(mhi_cntrl); err_unregister: mhi_unregister_controller(mhi_cntrl); -err_disable_reporting: - pci_disable_pcie_error_reporting(pdev); return err; } @@ -965,7 +960,6 @@ static void mhi_pci_remove(struct pci_dev *pdev) pm_runtime_get_noresume(&pdev->dev); mhi_unregister_controller(mhi_cntrl); - pci_disable_pcie_error_reporting(pdev); } static void mhi_pci_shutdown(struct pci_dev *pdev)