usb: gadget: at91udc: Don't check for ep->ep.desc
Earlier we used to check for ep->ep.desc to figure out if this ep has
already been enabled and if so, abort.
Ido Shayevitz removed the usb_endpoint_descriptor from private udc
structure 5a6506f00
("usb: gadget: Update at91_udc to use
usb_endpoint_descriptor inside the struct usb_ep") but did not fix up
the ep_enable condition because _now_ the member is always true and we
can't check if this ep is enabled twice.
Cc: Ido Shayevitz <idos@codeaurora.org>
Tested-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Tested-by: Mario Isidoro <Mario.Isidoro@tecmic.pt>
Cc: <stable@kernel.org> # v3.5
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Родитель
8b7dda554c
Коммит
f3bb8e63a8
|
@ -475,8 +475,7 @@ static int at91_ep_enable(struct usb_ep *_ep,
|
|||
unsigned long flags;
|
||||
|
||||
if (!_ep || !ep
|
||||
|| !desc || ep->ep.desc
|
||||
|| _ep->name == ep0name
|
||||
|| !desc || _ep->name == ep0name
|
||||
|| desc->bDescriptorType != USB_DT_ENDPOINT
|
||||
|| (maxpacket = usb_endpoint_maxp(desc)) == 0
|
||||
|| maxpacket > ep->maxpacket) {
|
||||
|
@ -530,7 +529,6 @@ ok:
|
|||
tmp |= AT91_UDP_EPEDS;
|
||||
__raw_writel(tmp, ep->creg);
|
||||
|
||||
ep->ep.desc = desc;
|
||||
ep->ep.maxpacket = maxpacket;
|
||||
|
||||
/*
|
||||
|
|
Загрузка…
Ссылка в новой задаче