Re: [PATCH v3 6/6] gpiolib: notify user-space about in-kernel line state changes
From: Bartosz Golaszewski
Date: Wed Oct 16 2024 - 05:22:26 EST
On Wed, Oct 16, 2024 at 11:17 AM Kent Gibson <warthog618@xxxxxxxxx> wrote:
>
> >
> > Does the following help?
> >
> > @@ -2830,7 +2860,7 @@ int gpiod_direction_output(struct gpio_desc
> > *desc, int value)
> > goto set_output_value;
> > /* Emulate open drain by not actively driving the line high */
> > if (value) {
> > - ret = gpiod_direction_input(desc);
> > + ret = gpiod_direction_input_nonotify(desc);
> > goto set_output_flag;
> > }
> > } else if (test_bit(FLAG_OPEN_SOURCE, &flags)) {
> > @@ -2839,7 +2869,7 @@ int gpiod_direction_output(struct gpio_desc
> > *desc, int value)
> > goto set_output_value;
> > /* Emulate open source by not actively driving the line low */
> > if (!value) {
> > - ret = gpiod_direction_input(desc);
> > + ret = gpiod_direction_input_nonotify(desc);
> > goto set_output_flag;
> > }
> > } else {
> >
>
> That fixes the drive problems.
>
Ok, thanks.
> > >> Still haven't tested any debounce changes...
> > >>
> > >
> > > Have now.
> > >
> > > input -> input|debounce
> > >
> > > does not report the debounce. Only get the one event and it does not
> > > contain any debounce.
> > >
> >
> > You mean, you get a CHANGED_CONFIG event but the debounce value is not
> > in the associated line info?
> >
>
> Correct.
>
Ok, let me see.
Bart