On Mon, 9 Mar 2026, Dmitry Torokhov wrote: > On Mon, Feb 23, 2026 at 04:11:10PM +0200, Ilpo Järvinen wrote: > > On Wed, 18 Feb 2026, Dmitry Torokhov wrote: > > > > > The GPIO get callback is expected to return 0 or 1 (or a negative error > > > code). Ensure that the value returned by p50_gpio_get() is normalized > > > to the [0, 1] range. > > > > > > Signed-off-by: Dmitry Torokhov > > > --- > > > drivers/platform/x86/barco-p50-gpio.c | 5 ++++- > > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/platform/x86/barco-p50-gpio.c b/drivers/platform/x86/barco-p50-gpio.c > > > index 6f13e81f98fb..360ffd8505d6 100644 > > > --- a/drivers/platform/x86/barco-p50-gpio.c > > > +++ b/drivers/platform/x86/barco-p50-gpio.c > > > @@ -275,8 +275,11 @@ static int p50_gpio_get(struct gpio_chip *gc, unsigned int offset) > > > mutex_lock(&p50->lock); > > > > > > ret = p50_send_mbox_cmd(p50, P50_MBOX_CMD_READ_GPIO, gpio_params[offset], 0); > > > - if (ret == 0) > > > + if (ret == 0) { > > > ret = p50_read_mbox_reg(p50, P50_MBOX_REG_DATA); > > > + if (ret >= 0) > > > + ret = !!ret; > > > + } > > > > > > mutex_unlock(&p50->lock); > > > > A simpler flow would be preferrable over all that nesting. Is this > > logically correct: > > > > guard(mutex)(p50->lock); > > ret = p50_send_mbox_cmd(p50, P50_MBOX_CMD_READ_GPIO, gpio_params[offset], 0); > > if (ret < 0) > > return ret; > > > > ret = p50_read_mbox_reg(p50, P50_MBOX_REG_DATA); > > if (ret < 0) > > return ret; > > > > return !!ret; > > Yes, but I wanted to minimize the amount of change. Maybe I should send > a followup patch converting to guard()? Please do. I don't want to be adding into complexity when we've a nice solution to simplify it using guard(). -- i.