The idea of this message is: the non-ep0 should not use ctrl transfer. But it does not cover the ep0in which uses ctrl transfer too. This commit deletes the warning message at interrupt handler, and adds judgement at ep_enable, if non-ep0 requests ctrl transfer, it will indicate an error. Reported-by: Michael Grzeschik <mgr@xxxxxxxxxxxxxx> Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx> --- drivers/usb/chipidea/udc.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/usb/chipidea/udc.c b/drivers/usb/chipidea/udc.c index 09366b4..646d958 100644 --- a/drivers/usb/chipidea/udc.c +++ b/drivers/usb/chipidea/udc.c @@ -1001,11 +1001,6 @@ __acquires(ci->lock) !hw_test_and_clear_setup_status(ci, i)) continue; - if (i != 0) { - dev_warn(ci->dev, "ctrl traffic at endpoint %d\n", i); - continue; - } - /* * Flush data and handshake transactions of previous * setup packet. @@ -1201,6 +1196,11 @@ static int ep_enable(struct usb_ep *ep, retval |= hw_ep_enable(hwep->ci, hwep->num, hwep->dir, hwep->type); + if (hwep->num != 0 && hwep->type == USB_ENDPOINT_XFER_CONTROL) { + dev_err(hwep->ci->dev, "Set control xfer at non-ep0\n"); + retval = -EINVAL; + } + spin_unlock_irqrestore(hwep->lock, flags); return retval; } -- 1.7.8 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html