diff options
author | Johan Hovold <johan@kernel.org> | 2017-01-30 11:26:39 +0100 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2017-01-31 12:59:33 +0100 |
commit | 8e9faa15469ed7c7467423db4c62aeed3ff4cae3 (patch) | |
tree | c02e82adbed28ab857971022fca14ef7ee375b65 | |
parent | HID: cp2112: fix sleep-while-atomic (diff) | |
download | linux-8e9faa15469ed7c7467423db4c62aeed3ff4cae3.tar.xz linux-8e9faa15469ed7c7467423db4c62aeed3ff4cae3.zip |
HID: cp2112: fix gpio-callback error handling
In case of a zero-length report, the gpio direction_input callback would
currently return success instead of an errno.
Fixes: 1ffb3c40ffb5 ("HID: cp2112: make transfer buffers DMA capable")
Cc: stable <stable@vger.kernel.org> # 4.9
Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r-- | drivers/hid/hid-cp2112.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hid/hid-cp2112.c b/drivers/hid/hid-cp2112.c index 3e0b6bad29f2..b22d0f83f8e3 100644 --- a/drivers/hid/hid-cp2112.c +++ b/drivers/hid/hid-cp2112.c @@ -213,7 +213,7 @@ static int cp2112_gpio_direction_input(struct gpio_chip *chip, unsigned offset) exit: mutex_unlock(&dev->lock); - return ret <= 0 ? ret : -EIO; + return ret < 0 ? ret : -EIO; } static void cp2112_gpio_set(struct gpio_chip *chip, unsigned offset, int value) |