lkml.org 
[lkml]   [2015]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2 3/4] extcon: usb-gpio: make debounce value configurable in devicetree
Date
This patch adds devicetree property for setting debounce value. It allows
to set debounce time shorter or longer depending on the needs of given
platform.

Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
---
drivers/extcon/extcon-usb-gpio.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/drivers/extcon/extcon-usb-gpio.c b/drivers/extcon/extcon-usb-gpio.c
index c842715..439ca99 100644
--- a/drivers/extcon/extcon-usb-gpio.c
+++ b/drivers/extcon/extcon-usb-gpio.c
@@ -114,6 +114,7 @@ static int usb_extcon_probe(struct platform_device *pdev)
struct device *dev = &pdev->dev;
struct device_node *np = dev->of_node;
struct usb_extcon_info *info;
+ u32 debounce;
int ret;

if (!np)
@@ -124,6 +125,11 @@ static int usb_extcon_probe(struct platform_device *pdev)
return -ENOMEM;

info->dev = dev;
+
+ ret = of_property_read_u32(np, "debounce", &debounce);
+ if (ret < 0)
+ debounce = USB_GPIO_DEBOUNCE_MS;
+
info->id_gpiod = devm_gpiod_get_optional(&pdev->dev, "id");
info->vbus_gpiod = devm_gpiod_get_optional(&pdev->dev, "vbus");

@@ -145,16 +151,14 @@ static int usb_extcon_probe(struct platform_device *pdev)
}

if (info->id_gpiod)
- ret = gpiod_set_debounce(info->id_gpiod,
- USB_GPIO_DEBOUNCE_MS * 1000);
+ ret = gpiod_set_debounce(info->id_gpiod, debounce * 1000);
if (!ret && info->vbus_gpiod) {
- ret = gpiod_set_debounce(info->vbus_gpiod,
- USB_GPIO_DEBOUNCE_MS * 1000);
+ ret = gpiod_set_debounce(info->vbus_gpiod, debounce * 1000);
if (ret < 0 && info->id_gpiod)
gpiod_set_debounce(info->vbus_gpiod, 0);
}
if (ret < 0)
- info->debounce_jiffies = msecs_to_jiffies(USB_GPIO_DEBOUNCE_MS);
+ info->debounce_jiffies = msecs_to_jiffies(debounce);

INIT_DELAYED_WORK(&info->wq_detcable, usb_extcon_detect_cable);

--
1.9.1


\
 
 \ /
  Last update: 2015-04-01 10:01    [W:0.905 / U:0.168 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site