From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966201AbdIZCX3 (ORCPT ); Mon, 25 Sep 2017 22:23:29 -0400 Received: from mailout3.samsung.com ([203.254.224.33]:59134 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965067AbdIZCX1 (ORCPT ); Mon, 25 Sep 2017 22:23:27 -0400 X-AuditID: b6c32a39-a57ff7000000109f-11-59c9ba1cc600 MIME-version: 1.0 Content-transfer-encoding: 8BIT Content-type: text/plain; charset="UTF-8" Message-id: <59C9BA1D.9080900@samsung.com> Date: Tue, 26 Sep 2017 11:23:25 +0900 From: Chanwoo Choi Organization: Samsung Electronics User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 To: Linus Walleij , MyungJoo Ham Cc: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, John Stultz , Guenter Roeck Subject: Re: [PATCH 6/8] extcon: gpio: Get debounce setting from device property In-reply-to: <20170924145622.4031-7-linus.walleij@linaro.org> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrIKsWRmVeSWpSXmKPExsWy7bCmrq7MrpORBk3HtSzO/Na1mPJnOZPF 5vl/GC0u75rDZvFk4Rkmi9uNK9gc2DzuXNvD5rHzewO7R9+WVYwenzfJBbBEpdpkpCampBYp pOYl56dk5qXbKnkHxzvHm5oZGOoaWlqYKynkJeam2iq5+AToumXmAO1WUihLzCkFCgUkFhcr 6dvZFOWXlqQqZOQXl9gqRRsaGukZGpjrGRkZ6ZkYx1oZmQKVJKRm7J56mqmgSbSi9/Yc1gbG NwJdjJwcEgImEtO65jGB2EICOxglTt8u6WLkArK/M0qc2LiYFaboypntLBCJ3YwSk1fcYwRJ 8AoISvyYfA8owcHBLCAvceRSNkiYWUBTYuvu9ewQ9fcYJXoWP2ODqNeS+P3vD9hQFgFViZVX F4LNYQOK739xA6yGX0BR4uqPx2BxUYEIiZ3zv7GD2CIC4RL7jh1gBhnKLNDBKPFmB0RCWCBI 4s2qa2A2p4CtxLtXv1lBiiQE9rBJnGl4BfWCi8T7tUuhbGGJV8e3sINcLSEgLXHpqC1EfTuj xOY591ggHKAN91c2QjUYS5zqamSC+I1P4t3XHlaIZl6JjjYhiBIPiVU39jNB2I4SM57sZoN4 /zCjxOrbX9gmMMrNQgqxWYgQm4UUYgsYmVcxiqUWFOempxYbFpjqFSfmFpfmpesl5+duYgQn Ny3LHYzHzvkcYhTgYFTi4W1gOhkpxJpYVlyZe4hRgoNZSYT3+nagEG9KYmVValF+fFFpTmrx IUZTYIBPZJYSTc4HJt68knhDE0sDEzMjYPqyNDRUEucVXX8tQkggPbEkNTs1tSC1CKaPiYNT qoFxplm1xz/1csGNezdMKXfwTLAtMQ+Lvv75/xKu3cFyXw9MNPOfvyKgwuRMh7jqL6/scpGi N57mN/qOXX+tHC8g1VkRfmqH44GyyC9bhDZufXkj0OvcvHg1ndsWZi+21dg+Xyi/pWvbmwWO 2+T9PjaH/2p6tF90VfH0BastXJ6nTji8k8F1my2PEktxRqKhFnNRcSIACw7OjoQDAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrMLMWRmVeSWpSXmKPExsVy+t9jAV2ZXScjDT70SVmc+a1rMeXPciaL zfP/MFpc3jWHzeLJwjNMFrcbV7A5sHncubaHzWPn9wZ2j74tqxg9Pm+SC2CJ4rJJSc3JLEst 0rdL4MrYPfU0U0GTaEXv7TmsDYxvBLoYOTkkBEwkrpzZztLFyMUhJLCTUaJt0ls2kASvgKDE j8n3gBIcHMwC8hJHLmWDhJkF1CUmzVvEDFH/gFHi1Jp1LBD1WhK///1hBbFZBFQlVl5dyAhi swHF97+4ATaTX0BR4uqPx4wgM0UFIiS6T1SChEUEwiVmL3jPDDG/g1Fi8mZNEFtYIEDi369f 7BC7DjNKvN6yG2wOp4CtxLtXv1knMArMQnLqLIRTZyE5dQEj8ypGydSC4tz03GKjAsO81HK9 4sTc4tK8dL3k/NxNjMCg3nZYq28H4/0l8YcYBTgYlXh4G5hORgqxJpYVV+YeYpTgYFYS4b2+ HSjEm5JYWZValB9fVJqTWnyIUZqDRUmc93besUghgfTEktTs1NSC1CKYLBMHp1QDo+W840/r FHQcVx3W2Pbj1vZqU21FoffNnbycy+LUVsYf2FC8bMn0XXobFSbPiFuTqVgoEydQ4K0Uzc+w 5tT+hoe32bpDNsetnxEkGfCt8/KqXY6Ol/+q53RNTGC9ZPE/TJe1Ql71yQ0LTQWX/T3n+Bkq lIUnJX65/rLL50TS3oW5xQYfZyTsVWIpzkg01GIuKk4EAC0UYudmAgAA X-CMS-MailID: 20170926022324epcas1p351c5246d346f3b871c76a999c0c149b6 X-Msg-Generator: CA X-Sender-IP: 182.195.42.142 X-Local-Sender: =?UTF-8?B?7LWc7LCs7JqwG1RpemVuIFBsYXRmb3JtIExhYihTL1fshLw=?= =?UTF-8?B?7YSwKRvsgrzshLHsoITsnpAbU2VuaW9yIEVuZ2luZWVy?= X-Global-Sender: =?UTF-8?B?Q2hhbndvbyBDaG9pG1RpemVuIFBsYXRmb3JtIExhYi4bU2Ft?= =?UTF-8?B?c3VuZyBFbGVjdHJvbmljcxtTZW5pb3IgRW5naW5lZXI=?= X-Sender-Code: =?UTF-8?B?QzEwG1RFTEUbQzEwVjgxMTE=?= CMS-TYPE: 101P DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20170924150129epcas3p4bf7c5e9e4b82efb1f6ceb1fd599203d1 X-RootMTR: 20170924150129epcas3p4bf7c5e9e4b82efb1f6ceb1fd599203d1 References: <20170924145622.4031-1-linus.walleij@linaro.org> <20170924145622.4031-7-linus.walleij@linaro.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Linus, On 2017년 09월 24일 23:56, Linus Walleij wrote: > Look up the debouncing value using the device property that will > pick it from device tree or ACPI DSDT or whatever is available. > > Reintroduce the debounce handling previously deleted in the > series, setting the delayed worker to delay 0 ms if the GPIO > driver supports debouncing for us, else just delay the reading > of the value delayed by jiffies. > > Signed-off-by: Linus Walleij > --- > drivers/extcon/extcon-gpio.c | 13 +++++++++++-- > 1 file changed, 11 insertions(+), 2 deletions(-) I checked the pinctrl-bindings.txt[1] in order to check the property name of 'input-debounce'. It looks good to me. [1] Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt Acked-by: Chanwoo Choi > > diff --git a/drivers/extcon/extcon-gpio.c b/drivers/extcon/extcon-gpio.c > index 6d9cb4ed11c2..8fc52631c8a2 100644 > --- a/drivers/extcon/extcon-gpio.c > +++ b/drivers/extcon/extcon-gpio.c > @@ -24,6 +24,7 @@ > #include > #include > #include > +#include > #include > #include > > @@ -35,7 +36,6 @@ > * value. > * @gpiod: GPIO descriptor for this external connector. > * @extcon_id: The unique id of specific external connector. > - * @debounce: Debounce time for GPIO IRQ in ms. > * @check_on_resume: Boolean describing whether to check the state of gpio > * while resuming from sleep. > */ > @@ -45,7 +45,6 @@ struct gpio_extcon_data { > unsigned long debounce_jiffies; > struct gpio_desc *gpiod; > unsigned int extcon_id; > - unsigned long debounce; > bool check_on_resume; > }; > > @@ -74,6 +73,7 @@ static int gpio_extcon_probe(struct platform_device *pdev) > struct gpio_extcon_data *data; > struct device *dev = &pdev->dev; > unsigned long irq_flags; > + u32 debounce_usecs; > int irq; > int ret; > > @@ -109,6 +109,15 @@ static int gpio_extcon_probe(struct platform_device *pdev) > return -ENOMEM; > } > > + ret = device_property_read_u32(dev, "input-debounce", &debounce_usecs); > + if (ret || !debounce_usecs) { > + dev_err(dev, "illegal debounce value, set to 20 ms\n"); > + debounce_usecs = 20000; > + } > + ret = gpiod_set_debounce(data->gpiod, debounce_usecs); > + if (ret) > + data->debounce_jiffies = msecs_to_jiffies(debounce_usecs * 1000); > + > ret = devm_extcon_dev_register(dev, data->edev); > if (ret < 0) > return ret; > -- Best Regards, Chanwoo Choi Samsung Electronics