On Fri 2019-11-08 17:07:46, Thierry Reding wrote: > From: Thierry Reding <treding@xxxxxxxxxx> > > 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@xxxxxxx> > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> Thanks for doing this! Acked-by: Pavel Machek <pavel@xxxxxxx> 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
Attachment:
signature.asc
Description: PGP signature