From 1c34a962b394dceb77d11aef6401892415e8a687 Mon Sep 17 00:00:00 2001 From: Todd Poynor Date: Sun, 5 Aug 2018 13:07:42 -0700 Subject: [PATCH] staging: gasket: apex: enable/disable gasket device from apex Gasket framework now places device drivers in charge of calling APIs to enable and disable gasket device operations. Make the appropriate calls from the apex driver. Signed-off-by: Todd Poynor Signed-off-by: Greg Kroah-Hartman --- apex_driver.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/apex_driver.c b/apex_driver.c index 9b13929..a4b051c 100644 --- a/apex_driver.c +++ b/apex_driver.c @@ -707,11 +707,23 @@ static int apex_pci_probe(struct pci_dev *pci_dev, return ret; } + pci_set_drvdata(pci_dev, gasket_dev); + ret = gasket_enable_device(gasket_dev); + if (ret) { + dev_err(&pci_dev->dev, "error enabling gasket device\n"); + gasket_pci_remove_device(pci_dev); + pci_disable_device(pci_dev); + return ret; + } + return 0; } static void apex_pci_remove(struct pci_dev *pci_dev) { + struct gasket_dev *gasket_dev = pci_get_drvdata(pci_dev); + + gasket_disable_device(gasket_dev); gasket_pci_remove_device(pci_dev); pci_disable_device(pci_dev); }