devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mmc: core: Add DT bindings for card detect debounce time
@ 2014-05-09 15:37 Balaji T K
  2014-06-18 13:04 ` Balaji T K
  2014-06-18 13:47 ` Ulf Hansson
  0 siblings, 2 replies; 7+ messages in thread
From: Balaji T K @ 2014-05-09 15:37 UTC (permalink / raw)
  To: linux-mmc, chris, ulf.hansson, devicetree, linux-doc; +Cc: Balaji T K

Provide an option to get CD debounce time from DT

Signed-off-by: Balaji T K <balajitk@ti.com>
---
 Documentation/devicetree/bindings/mmc/mmc.txt |    1 +
 drivers/mmc/core/host.c                       |    6 +++++-
 2 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt
index 9dce540..fae590b 100644
--- a/Documentation/devicetree/bindings/mmc/mmc.txt
+++ b/Documentation/devicetree/bindings/mmc/mmc.txt
@@ -17,6 +17,7 @@ Optional properties:
 - bus-width: Number of data lines, can be <1>, <4>, or <8>.  The default
   will be <1> if the property is absent.
 - wp-gpios: Specify GPIOs for write protection, see gpio binding
+- cd-debounce-us: debounce time in microseconds for card detect gpio.
 - cd-inverted: when present, polarity on the CD line is inverted. See the note
   below for the case, when a GPIO is used for the CD line
 - wp-inverted: when present, polarity on the WP line is inverted. See the note
diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c
index fdea825..59cd3a0 100644
--- a/drivers/mmc/core/host.c
+++ b/drivers/mmc/core/host.c
@@ -313,6 +313,7 @@ int mmc_of_parse(struct mmc_host *host)
 	bool explicit_inv_wp, gpio_inv_wp = false;
 	enum of_gpio_flags flags;
 	int len, ret, gpio;
+	unsigned int debounce;
 
 	if (!host->parent || !host->parent->of_node)
 		return 0;
@@ -367,6 +368,9 @@ int mmc_of_parse(struct mmc_host *host)
 		if (of_find_property(np, "broken-cd", &len))
 			host->caps |= MMC_CAP_NEEDS_POLL;
 
+		if (of_property_read_u32(np, "cd-debounce-us", &debounce) < 0)
+			debounce = 0;
+
 		gpio = of_get_named_gpio_flags(np, "cd-gpios", 0, &flags);
 		if (gpio == -EPROBE_DEFER)
 			return gpio;
@@ -374,7 +378,7 @@ int mmc_of_parse(struct mmc_host *host)
 			if (!(flags & OF_GPIO_ACTIVE_LOW))
 				gpio_inv_cd = true;
 
-			ret = mmc_gpio_request_cd(host, gpio, 0);
+			ret = mmc_gpio_request_cd(host, gpio, debounce);
 			if (ret < 0) {
 				dev_err(host->parent,
 					"Failed to request CD GPIO #%d: %d!\n",
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-07-09 12:28 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-09 15:37 [PATCH] mmc: core: Add DT bindings for card detect debounce time Balaji T K
2014-06-18 13:04 ` Balaji T K
2014-06-18 13:47 ` Ulf Hansson
2014-06-21  7:22   ` Alexandre Courbot
2014-07-07 15:12     ` Linus Walleij
2014-07-07 16:59       ` Dmitry Torokhov
2014-07-09 12:28       ` Alexandre Courbot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).