[PATCH 10/19] PCI: endpoint: Make pci_epf_driver ops optional
From: Kishon Vijay Abraham I
Date: Thu May 14 2020 - 11:01:29 EST
pci_epf_driver had two ops for bind and unbind which will be invoked
when an endpoint controller is bound to an endpoint function (using
configfs). Now that endpoint core has support to define an endpoint
function using device tree alone, the bind and unbind ops can be
optional. Make pci_epf_driver ops optional here.
Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
---
drivers/pci/endpoint/pci-epf-core.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/pci/endpoint/pci-epf-core.c b/drivers/pci/endpoint/pci-epf-core.c
index f9ba2e8d4a99..f463eedcc3ad 100644
--- a/drivers/pci/endpoint/pci-epf-core.c
+++ b/drivers/pci/endpoint/pci-epf-core.c
@@ -201,11 +201,9 @@ int __pci_epf_register_driver(struct pci_epf_driver *driver,
{
int ret;
- if (!driver->ops)
- return -EINVAL;
-
- if (!driver->ops->bind || !driver->ops->unbind)
- return -EINVAL;
+ if (!driver->ops || !driver->ops->bind || !driver->ops->unbind)
+ pr_debug("%s: Supports only pci_epf device created using DT\n",
+ driver->driver.name);
driver->driver.bus = &pci_epf_bus_type;
driver->driver.owner = owner;
--
2.17.1