Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpio: winbond: Fix error code in winbond_gpio_get()

This error path returns 1, but it should instead propagate the negative
error code from winbond_sio_enter().

Fixes: a0d65009411c ("gpio: winbond: Add driver")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>

authored by

Dan Carpenter and committed by
Bartosz Golaszewski
9ca766ea a01a40e3

+4 -3
+4 -3
drivers/gpio/gpio-winbond.c
··· 385 385 unsigned long *base = gpiochip_get_data(gc); 386 386 const struct winbond_gpio_info *info; 387 387 bool val; 388 + int ret; 388 389 389 390 winbond_gpio_get_info(&offset, &info); 390 391 391 - val = winbond_sio_enter(*base); 392 - if (val) 393 - return val; 392 + ret = winbond_sio_enter(*base); 393 + if (ret) 394 + return ret; 394 395 395 396 winbond_sio_select_logical(*base, info->dev); 396 397