summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2017-01-30 10:26:39 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-02-09 07:08:25 (GMT)
commit7396685a1bca323b96fd79b836ae22b7569d7068 (patch)
tree67a84f45094a48891f4755c30775dff73a6bd788
parenta18c4584a48931e8048508469bcdb53c6082221a (diff)
downloadlinux-7396685a1bca323b96fd79b836ae22b7569d7068.tar.xz
HID: cp2112: fix gpio-callback error handling
commit 8e9faa15469ed7c7467423db4c62aeed3ff4cae3 upstream. 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") Signed-off-by: Johan Hovold <johan@kernel.org> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/hid/hid-cp2112.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hid/hid-cp2112.c b/drivers/hid/hid-cp2112.c
index ffc941c..e06c134 100644
--- a/drivers/hid/hid-cp2112.c
+++ b/drivers/hid/hid-cp2112.c
@@ -206,7 +206,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)