[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMpxmJX0oM3cUQULr8UmKtJ5mGuzSvGeR5jCmo88Q_9+gDXqjA@mail.gmail.com>
Date: Tue, 12 Nov 2019 11:16:10 +0100
From: Bartosz Golaszewski <bgolaszewski@...libre.com>
To: Pavel Machek <pavel@...x.de>
Cc: Thierry Reding <thierry.reding@...il.com>,
Linus Walleij <linus.walleij@...aro.org>,
linux-gpio <linux-gpio@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/2] gpio: max77620: Fixup debounce delays
pt., 8 lis 2019 o 21:54 Pavel Machek <pavel@...x.de> napisaĆ(a):
>
> On Fri 2019-11-08 17:07:46, Thierry Reding wrote:
> > From: Thierry Reding <treding@...dia.com>
> >
> > When converting milliseconds to microseconds in commit fffa6af94894
> > ("gpio: max77620: Use correct unit for debounce times") some ~1 ms gaps
> > were introduced between the various ranges supported by the controller.
> > Fix this by changing the start of each range to the value immediately
> > following the end of the previous range. This way a debounce time of,
> > say 8250 us will translate into 16 ms instead of returning an -EINVAL
> > error.
> >
> > Typically the debounce delay is only ever set through device tree and
> > specified in milliseconds, so we can never really hit this issue because
> > debounce times are always a multiple of 1000 us.
> >
> > The only notable exception for this is drivers/mmc/host/mmc-spi.c where
> > the CD GPIO is requested, which passes a 1 us debounce time. According
> > to a comment preceeding that code this should actually be 1 ms (i.e.
> > 1000 us).
> >
> > Reported-by: Pavel Machek <pavel@...x.de>
> > Signed-off-by: Thierry Reding <treding@...dia.com>
>
> Thanks for doing this!
>
> Acked-by: Pavel Machek <pavel@...x.de>
>
> And I guess this should be cc: stable, as the commit this fixes was
> making its way there.
>
> Best regards,
> Pavel
>
>
> > @@ -198,13 +198,13 @@ static int max77620_gpio_set_debounce(struct max77620_gpio *mgpio,
> > case 0:
> > val = MAX77620_CNFG_GPIO_DBNC_None;
> > break;
> > - case 1000 ... 8000:
> > + case 1 ... 8000:
> > val = MAX77620_CNFG_GPIO_DBNC_8ms;
> > break;
> > - case 9000 ... 16000:
> > + case 8001 ... 16000:
> > val = MAX77620_CNFG_GPIO_DBNC_16ms;
> > break;
> > - case 17000 ... 32000:
> > + case 16001 ... 32000:
> > val = MAX77620_CNFG_GPIO_DBNC_32ms;
> > break;
> > default:
>
> --
> DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Applied for fixes and marked for stable.
Thanks
Powered by blists - more mailing lists