All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] bt8xxgpio: Check gpiochip_remove() result
@ 2009-10-12  6:08 Javier Martinez Canillas
  0 siblings, 0 replies; only message in thread
From: Javier Martinez Canillas @ 2009-10-12  6:08 UTC (permalink / raw)
  To: kernel-janitors

After fixing checkpatch.pl warnings, got a compile error. Sorry for the inconvenience.

Signed-off-by: Javier Martinez Canillas <martinez.javier@gmail.com>
---
 drivers/gpio/bt8xxgpio.c |   33 +++++++++++++++++++--------------
 1 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/drivers/gpio/bt8xxgpio.c b/drivers/gpio/bt8xxgpio.c
index 2559f22..b4aa126 100644
--- a/drivers/gpio/bt8xxgpio.c
+++ b/drivers/gpio/bt8xxgpio.c
@@ -242,20 +242,25 @@ err_freebg:
 static void bt8xxgpio_remove(struct pci_dev *pdev)
 {
 	struct bt8xxgpio *bg = pci_get_drvdata(pdev);
-
-	gpiochip_remove(&bg->gpio);
-
-	bgwrite(0, BT848_INT_MASK);
-	bgwrite(~0x0, BT848_INT_STAT);
-	bgwrite(0x0, BT848_GPIO_OUT_EN);
-
-	iounmap(bg->mmio);
-	release_mem_region(pci_resource_start(pdev, 0),
-			   pci_resource_len(pdev, 0));
-	pci_disable_device(pdev);
-
-	pci_set_drvdata(pdev, NULL);
-	kfree(bg);
+	int ret;
+
+	ret = gpiochip_remove(&bg->gpio);
+
+	if (!ret) {
+		bgwrite(0, BT848_INT_MASK);
+		bgwrite(~0x0, BT848_INT_STAT);
+		bgwrite(0x0, BT848_GPIO_OUT_EN);
+
+		iounmap(bg->mmio);
+		release_mem_region(pci_resource_start(pdev, 0),
+				   pci_resource_len(pdev, 0));
+		pci_disable_device(pdev);
+
+		pci_set_drvdata(pdev, NULL);
+		kfree(bg);
+	} else
+		dev_err(&pdev->dev, "Failed to remove the GPIO controller: \
+			%d\n", ret);
 }
 
 #ifdef CONFIG_PM
-- 
1.6.0.4




^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2009-10-12  6:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-12  6:08 [PATCH] bt8xxgpio: Check gpiochip_remove() result Javier Martinez Canillas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.