Skip to contentSkip to conversation

Patch "pinctrl: mediatek: correct debounce time unit in mtk_gpio_set_debounce" has been added to the 4.5-stable tree

PATCH [email protected] 1 participant 1 message May 1, 2016

Subsystems (4)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

pinctrl: mediatek: correct debounce time unit in mtk_gpio_set_debounce

to the 4.5-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
pinctrl-mediatek-correct-debounce-time-unit-in-mtk_gpio_set_debounce.patch
and it can be found in the queue-4.5 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 5fedbb923936174ab4d1d5cc92bca1cf6b2e0ca2 Mon Sep 17 00:00:00 2001

From: Yingjoe Chen <[email protected]>
Date: Sat, 2 Apr 2016 14:57:49 +0800
Subject: pinctrl: mediatek: correct debounce time unit in mtk_gpio_set_debounce

From: Yingjoe Chen <[email protected]>

commit 5fedbb923936174ab4d1d5cc92bca1cf6b2e0ca2 upstream.

The debounce time unit for gpio_chip.set_debounce is us but mtk_gpio_set_debounce regard it as ms.
Fix this by correct debounce time array dbnc_arr so it can find correct debounce setting. Debounce time for first debounce setting is 500us, correct this as well.

While I'm at it, also change the debounce time array name to "debounce_time" for readability.

---
 drivers/pinctrl/mediatek/pinctrl-mtk-common.c |    9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)
drivers/pinctrl/mediatek/pinctrl-mtk-common.c +5 -4
@@ -949,7 +949,8 @@ static int mtk_gpio_set_debounce(struct
 	struct mtk_pinctrl *pctl = dev_get_drvdata(chip->parent);
 	int eint_num, virq, eint_offset;
 	unsigned int set_offset, bit, clr_bit, clr_offset, rst, i, unmask, dbnc;
-	static const unsigned int dbnc_arr[] = {0 , 1, 16, 32, 64, 128, 256};
+	static const unsigned int debounce_time[] = {500, 1000, 16000, 32000, 64000,
+						128000, 256000};
 	const struct mtk_desc_pin *pin;
 	struct irq_data *d;
 
@@ -967,9 +968,9 @@ static int mtk_gpio_set_debounce(struct
 	if (!mtk_eint_can_en_debounce(pctl, eint_num))
 		return -ENOSYS;
 
-	dbnc = ARRAY_SIZE(dbnc_arr);
-	for (i = 0; i < ARRAY_SIZE(dbnc_arr); i++) {
-		if (debounce <= dbnc_arr[i]) {
+	dbnc = ARRAY_SIZE(debounce_time);
+	for (i = 0; i < ARRAY_SIZE(debounce_time); i++) {
+		if (debounce <= debounce_time[i]) {
 			dbnc = i;
 			break;
 		}

Patches currently in stable-queue which might be from [email protected] are

queue-4.5/pinctrl-mediatek-correct-debounce-time-unit-in-mtk_gpio_set_debounce.patch