From 0285f97f392867ef9fb6f48b78f08db46c54ebf0 Mon Sep 17 00:00:00 2001 From: Vidya Sagar Date: Thu, 13 Oct 2022 23:48:13 +0530 Subject: [PATCH] NVIDIA: SAUCE: PCI: dwc: Add a DWC wrapper to pci_epc_deinit_notify() BugLink: https://bugs.launchpad.net/bugs/2072591 Add a wrapper for the pci_epc_deinit_notify() at the DWC layer for all the DesignWare based platform controller drivers to invoke during their respective endpoint controllers deinitialization. Signed-off-by: Vidya Sagar Reviewed-by: Nagarjuna Kristam Reviewed-by: Manikanta Maddireddy Reviewed-by: Bitan Biswas Tested-by: Nagarjuna Kristam Reviewed-by: Abhilash G Tested-by: Abhilash G Reviewed-by: Laxman Dewangan Signed-off-by: Laxman Dewangan Acked-by: Jacob Martin Acked-by: Noah Wager Signed-off-by: Noah Wager [nwager: context changes due to rebase on new commit b2c8772daff9 ("PCI: dwc: ep: Rename dw_pcie_ep_exit() to dw_pcie_ep_deinit()")] Signed-off-by: Noah Wager --- drivers/pci/controller/dwc/pcie-designware-ep.c | 8 ++++++++ drivers/pci/controller/dwc/pcie-designware.h | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/drivers/pci/controller/dwc/pcie-designware-ep.c b/drivers/pci/controller/dwc/pcie-designware-ep.c index a2bbea2ba5ef..1dafe4418671 100644 --- a/drivers/pci/controller/dwc/pcie-designware-ep.c +++ b/drivers/pci/controller/dwc/pcie-designware-ep.c @@ -752,6 +752,14 @@ err_remove_edma: } EXPORT_SYMBOL_GPL(dw_pcie_ep_init_complete); +void dw_pcie_ep_deinit_notify(struct dw_pcie_ep *ep) +{ + struct pci_epc *epc = ep->epc; + + pci_epc_deinit_notify(epc); +} +EXPORT_SYMBOL_GPL(dw_pcie_ep_deinit_notify); + int dw_pcie_ep_init(struct dw_pcie_ep *ep) { int ret; diff --git a/drivers/pci/controller/dwc/pcie-designware.h b/drivers/pci/controller/dwc/pcie-designware.h index 244fafc0c2c7..d756515a7fcf 100644 --- a/drivers/pci/controller/dwc/pcie-designware.h +++ b/drivers/pci/controller/dwc/pcie-designware.h @@ -674,6 +674,7 @@ void dw_pcie_ep_linkup(struct dw_pcie_ep *ep); int dw_pcie_ep_init(struct dw_pcie_ep *ep); int dw_pcie_ep_init_complete(struct dw_pcie_ep *ep); void dw_pcie_ep_init_notify(struct dw_pcie_ep *ep); +void dw_pcie_ep_deinit_notify(struct dw_pcie_ep *ep); void dw_pcie_ep_deinit(struct dw_pcie_ep *ep); int dw_pcie_ep_raise_intx_irq(struct dw_pcie_ep *ep, u8 func_no); int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, u8 func_no, @@ -704,6 +705,10 @@ static inline void dw_pcie_ep_init_notify(struct dw_pcie_ep *ep) { } +static inline void dw_pcie_ep_deinit_notify(struct dw_pcie_ep *ep) +{ +} + static inline void dw_pcie_ep_deinit(struct dw_pcie_ep *ep) { }