On Thu, Jan 21, 2021 at 3:11 PM Kent Gibson <warthog618@xxxxxxxxx> wrote: > > When set_config changes a line from input to output debounce is > implicitly disabled, as debounce makes no sense for outputs, but the > debounce period is not being cleared and is still reported in the > line info. > > So clear the debounce period when the debouncer is stopped in > edge_detector_stop(). > > Fixed: 65cff7047640 ("gpiolib: cdev: support setting debounce") The actual hash for this commit is 65cff7046406 - I fixed that locally. Patch applied for fixes, thanks! Bartosz > Signed-off-by: Kent Gibson <warthog618@xxxxxxxxx> > --- > drivers/gpio/gpiolib-cdev.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/gpio/gpiolib-cdev.c b/drivers/gpio/gpiolib-cdev.c > index 12b679ca552c..3551aaf5a361 100644 > --- a/drivers/gpio/gpiolib-cdev.c > +++ b/drivers/gpio/gpiolib-cdev.c > @@ -776,6 +776,8 @@ static void edge_detector_stop(struct line *line) > cancel_delayed_work_sync(&line->work); > WRITE_ONCE(line->sw_debounced, 0); > WRITE_ONCE(line->eflags, 0); > + if (line->desc) > + WRITE_ONCE(line->desc->debounce_period_us, 0); > /* do not change line->level - see comment in debounced_value() */ > } > > -- > 2.30.0 >