On Mon, Feb 10, 2025 at 11:52:02AM +0100, Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> > > As per the API contract, the get_direction() callback can only > return 0, 1 or a negative error number. Add a wrapper around the callback > calls that filters out anything else. ... > +static int gpiochip_get_direction(struct gpio_chip *gc, unsigned int offset) > +{ > + int ret; > + > + lockdep_assert_held(&gc->gpiodev->srcu); > + > + if (WARN_ON(!gc->get_direction)) > + return -EOPNOTSUPP; > + > + ret = gc->get_direction(gc, offset); > + if (ret > 1) Would it be better to use the respective GPIO*... macro instead of 1? > + ret = -EBADE; > + > + return ret; > +} -- With Best Regards, Andy Shevchenko