mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 09:14:19 +08:00
USB: dbgp gadget: fix return value of dbgp_setup
Current code returns 0 even if it can't handle the request. This leads to timeouts when an unhandled request is sent: Bus 001 Device 003: ID 0525:c0de Netchip Technology, Inc. Device Descriptor: [..] can't get device qualifier: Connection timed out [..] change the code to return EOPNOTSUPP in such cases. Signed-off-by: Sven Schnelle <svens@stackframe.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
25a73c6ce7
commit
1744020ceb
@ -350,9 +350,9 @@ static int dbgp_setup(struct usb_gadget *gadget,
|
||||
u8 request = ctrl->bRequest;
|
||||
u16 value = le16_to_cpu(ctrl->wValue);
|
||||
u16 length = le16_to_cpu(ctrl->wLength);
|
||||
int err = 0;
|
||||
void *data;
|
||||
u16 len;
|
||||
int err = -EOPNOTSUPP;
|
||||
void *data = NULL;
|
||||
u16 len = 0;
|
||||
|
||||
gadget->ep0->driver_data = gadget;
|
||||
|
||||
@ -371,10 +371,9 @@ static int dbgp_setup(struct usb_gadget *gadget,
|
||||
default:
|
||||
goto fail;
|
||||
}
|
||||
err = 0;
|
||||
} else if (request == USB_REQ_SET_FEATURE &&
|
||||
value == USB_DEVICE_DEBUG_MODE) {
|
||||
len = 0;
|
||||
data = NULL;
|
||||
dev_dbg(&dbgp.gadget->dev, "setup: feat debug\n");
|
||||
#ifdef CONFIG_USB_G_DBGP_PRINTK
|
||||
err = dbgp_enable_ep();
|
||||
|
Loading…
Reference in New Issue
Block a user