| To: | Wim Van Sebroeck <wim@iguana.be> |
|---|---|
| Subject: | [PATCH 2/5 v3] WATCHDOG: mtx1-wdt: request gpio before using it |
| From: | Florian Fainelli <florian@openwrt.org> |
| Date: | Wed, 15 Jun 2011 19:15:23 +0200 |
| Cc: | linux-mips@linux-mips.org, linux-watchdog@vger.kernel.org, Manuel Lauss <manuel.lauss@googlemail.com>, Jamie Iles <jamie@jamieiles.com> |
| Dkim-signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:sender:from:organization:to:subject:date :user-agent:cc:mime-version:content-type:content-transfer-encoding :message-id; bh=GXxPJX9SAuonyUGumJJD32CPaiWW3/8JWs7ZpNaMqnw=; b=jIyrMkOqt5Slm6QgPBcpEAJbo65WPaObEGcLb50vbFCXX0HQV172h6smZSkqMnyBH4 oI0TEQSnoaGu5hHiUkHyI57slhsUqw8Xb785VwDdqiBTm9uQo54wNw6zkvCH1zzDXYcl ImnHe9gQn4a9FnXS4wyGrJKRhQ1Jj4YKnKVpI= |
| Domainkey-signature: | a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:from:organization:to:subject:date:user-agent:cc:mime-version :content-type:content-transfer-encoding:message-id; b=hS2qqcuFo1vbGdP1xZ8eA0uH7neMWXkXGaBn1iZTCrLBjK2WZJLUSCo9PjEtUM1117 lVRWBCUlFWBl7Sl2cIAFrFoUjQEpd/A3aRWqh41LMZPcQD4tV7YEPkj4+mUci5jWHcuS oNZofvqwZdXIAeRv5S3WITePfwkuUrT0zPca0= |
| Organization: | OpenWrt |
| Sender: | linux-mips-bounce@linux-mips.org |
| User-agent: | KMail/1.13.6 (Linux/2.6.38-8-server; KDE/4.6.2; x86_64; ; ) |
Otherwise, the gpiolib autorequest feature will produce a WARN_ON():
WARNING: at drivers/gpio/gpiolib.c:101 0x8020ec6c()
autorequest GPIO-215
[...]
CC:stable@kernel.org
Signed-off-by: Florian Fainelli <florian@openwrt.org>
---
Changes since v1:
- use gpio_request_one()
- added missing gpio_free() in mtx1_wdt_remove
Changes since v2:
- added space between GPIOF_OUT_INIT_HIGH and "mtx1-wdt"
diff --git a/drivers/watchdog/mtx-1_wdt.c b/drivers/watchdog/mtx-1_wdt.c
index 63df28c..b93926e 100644
--- a/drivers/watchdog/mtx-1_wdt.c
+++ b/drivers/watchdog/mtx-1_wdt.c
@@ -214,6 +214,12 @@ static int __devinit mtx1_wdt_probe(struct platform_device
*pdev)
int ret;
mtx1_wdt_device.gpio = pdev->resource[0].start;
+ ret = gpio_request_one(mtx1_wdt_device.gpio,
+ GPIOF_OUT_INIT_HIGH, "mtx1-wdt");
+ if (ret < 0) {
+ dev_err(&pdev->dev, "failed to request gpio");
+ return ret;
+ }
spin_lock_init(&mtx1_wdt_device.lock);
init_completion(&mtx1_wdt_device.stop);
@@ -239,6 +245,8 @@ static int __devexit mtx1_wdt_remove(struct platform_device
*pdev)
mtx1_wdt_device.queue = 0;
wait_for_completion(&mtx1_wdt_device.stop);
}
+
+ gpio_free(mtx1_wdt_device.gpio);
misc_deregister(&mtx1_wdt_misc);
return 0;
}
--
1.7.4.1
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH 1/5 v3] WATCHDOG: mtx1-wdt: use dev_{err,info} instead of printk(), Florian Fainelli |
|---|---|
| Next by Date: | [PATCH 3/5 v3] WATCHDOG: mtx1-wdt: fix GPIO toggling, Florian Fainelli |
| Previous by Thread: | [PATCH 1/5 v3] WATCHDOG: mtx1-wdt: use dev_{err,info} instead of printk(), Florian Fainelli |
| Next by Thread: | [PATCH 3/5 v3] WATCHDOG: mtx1-wdt: fix GPIO toggling, Florian Fainelli |
| Indexes: | [Date] [Thread] [Top] [All Lists] |