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