aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/tablet/gtco.c
diff options
context:
space:
mode:
authorAnders Roxell <anders.roxell@linaro.org>2016-08-10 12:11:15 +0200
committerAnders Roxell <anders.roxell@linaro.org>2016-08-10 12:11:15 +0200
commita44038112d3379f49df8a9db3e1259d9e945faee (patch)
tree198f8ef7dcba389b87dbd3cac861d896b5bfd77d /drivers/input/tablet/gtco.c
parent590e935df0c94b2d7a4584bb26906666176a6133 (diff)
parent0e790100f1c49f32a390d0cc55801230fd04ba56 (diff)
Merge remote-tracking branch 'lsk/linux-linaro-lsk-v3.18' into linux-linaro-lsk-v3.18-rtlsk-v3.18-16.09-rtlinux-linaro-lsk-v3.18-rt-test
Signed-off-by: Anders Roxell <anders.roxell@linaro.org> Conflicts: kernel/futex.c kernel/printk/printk.c kernel/softirq.c mm/slub.c mm/swap.c
Diffstat (limited to 'drivers/input/tablet/gtco.c')
-rw-r--r--drivers/input/tablet/gtco.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/input/tablet/gtco.c b/drivers/input/tablet/gtco.c
index 858045694e9d..a51de543a0b2 100644
--- a/drivers/input/tablet/gtco.c
+++ b/drivers/input/tablet/gtco.c
@@ -868,6 +868,14 @@ static int gtco_probe(struct usb_interface *usbinterface,
goto err_free_buf;
}
+ /* Sanity check that a device has an endpoint */
+ if (usbinterface->altsetting[0].desc.bNumEndpoints < 1) {
+ dev_err(&usbinterface->dev,
+ "Invalid number of endpoints\n");
+ error = -EINVAL;
+ goto err_free_urb;
+ }
+
/*
* The endpoint is always altsetting 0, we know this since we know
* this device only has one interrupt endpoint
@@ -889,7 +897,7 @@ static int gtco_probe(struct usb_interface *usbinterface,
* HID report descriptor
*/
if (usb_get_extra_descriptor(usbinterface->cur_altsetting,
- HID_DEVICE_TYPE, &hid_desc) != 0){
+ HID_DEVICE_TYPE, &hid_desc) != 0) {
dev_err(&usbinterface->dev,
"Can't retrieve exta USB descriptor to get hid report descriptor length\n");
error = -EIO;