diff --git a/Makefile b/Makefile index 73848b16..a3250d5a 100644 --- a/Makefile +++ b/Makefile @@ -69,6 +69,9 @@ subdir-ccflags-y += -DNV_FB_DEFERRED_IO_OPS_RENAME # Drop the API for pcie_disable_pcie_error_reporting subdir-ccflags-y += -DNV_PCIE_DIABLE_PCIE_ERROR_REPORTING_DROP +# PCIE DMA EPF core deinit not implemented in core kernel +subdir-ccflags-y += -DNV_PCIE_DMA_EPF_CORE_DEINIT_NOT_AVAILABLE + # Crypto driver has major change in it ops, skip it export CONFIG_SKIP_CRYPTO=y endif diff --git a/drivers/misc/nvscic2c-pcie/epf/module.c b/drivers/misc/nvscic2c-pcie/epf/module.c index 86e1c2cc..bf5cff5c 100644 --- a/drivers/misc/nvscic2c-pcie/epf/module.c +++ b/drivers/misc/nvscic2c-pcie/epf/module.c @@ -169,6 +169,7 @@ allocate_outbound_area(struct pci_epf *epf, size_t win_size, return ret; } +#if !defined(NV_PCIE_DMA_EPF_CORE_DEINIT_NOT_AVAILABLE) static void clear_inbound_translation(struct pci_epf *epf) { @@ -178,6 +179,7 @@ clear_inbound_translation(struct pci_epf *epf) /* no api to clear epf header.*/ } +#endif static int set_inbound_translation(struct pci_epf *epf) @@ -490,6 +492,7 @@ deinit_work(struct work_struct *work) * @DRV_MODE_EPC would have already gone then by the time * struct pci_epc_event_ops.core_deinit is called. */ +#if !defined(NV_PCIE_DMA_EPF_CORE_DEINIT_NOT_AVAILABLE) static int nvscic2c_pcie_epf_core_deinit(struct pci_epf *epf) { @@ -517,6 +520,7 @@ nvscic2c_pcie_epf_core_deinit(struct pci_epf *epf) return 0; } +#endif /* Handle link message from @DRV_MODE_EPC. */ static void @@ -729,7 +733,9 @@ get_driverdata(const struct pci_epf_device_id *id, static const struct pci_epc_event_ops nvscic2c_event_ops = { .core_init = nvscic2c_pcie_epf_core_init, +#if !defined(NV_PCIE_DMA_EPF_CORE_DEINIT_NOT_AVAILABLE) .core_deinit = nvscic2c_pcie_epf_core_deinit, +#endif }; static int diff --git a/drivers/pci/endpoint/functions/pci-epf-dma-test.c b/drivers/pci/endpoint/functions/pci-epf-dma-test.c index 22058782..e299174b 100644 --- a/drivers/pci/endpoint/functions/pci-epf-dma-test.c +++ b/drivers/pci/endpoint/functions/pci-epf-dma-test.c @@ -164,6 +164,7 @@ static int pcie_dma_epf_core_init(struct pci_epf *epf) return 0; } +#if !defined(NV_PCIE_DMA_EPF_CORE_DEINIT_NOT_AVAILABLE) static int pcie_dma_epf_core_deinit(struct pci_epf *epf) { struct pcie_epf_dma *epfnv = epf_get_drvdata(epf); @@ -179,6 +180,7 @@ static int pcie_dma_epf_core_deinit(struct pci_epf *epf) return 0; } +#endif static void pcie_dma_epf_unbind(struct pci_epf *epf) { @@ -263,7 +265,9 @@ static const struct pci_epf_device_id pcie_dma_epf_ids[] = { static const struct pci_epc_event_ops pci_epf_dma_test_event_ops = { .core_init = pcie_dma_epf_core_init, +#if !defined(NV_PCIE_DMA_EPF_CORE_DEINIT_NOT_AVAILABLE) .core_deinit = pcie_dma_epf_core_deinit, +#endif }; static int pcie_dma_epf_probe(struct pci_epf *epf)