summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/udc
diff options
context:
space:
mode:
authorZheng Bin <zhengbin13@huawei.com>2022-06-16 21:35:08 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-06-21 16:29:50 +0200
commit3d393f0303b5120aa8c98a8ee70535ea9604ef20 (patch)
tree059d5d4842dfba72762e51c29c3a2d98993252a4 /drivers/usb/gadget/udc
parent485394c63f47df18eb7498608d5fc9041c19ec13 (diff)
usb: gadget: aspeed_udc: fix missing spin_unlock_irqrestore in ast_udc_ep_queue
ast_udc_ep_queue misses spin_unlock_irqrestore in an error path, this patch fixes that. Fixes: 055276c13205 ("usb: gadget: add Aspeed ast2600 udc driver") Reviewed-by: Neal Liu <neal_liu@aspeedtech.com> Signed-off-by: Zheng Bin <zhengbin13@huawei.com> Link: https://lore.kernel.org/r/20220616133508.3655864-1-zhengbin13@huawei.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/gadget/udc')
-rw-r--r--drivers/usb/gadget/udc/aspeed_udc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/gadget/udc/aspeed_udc.c b/drivers/usb/gadget/udc/aspeed_udc.c
index 1fc15228ff15..6c91f7f288a2 100644
--- a/drivers/usb/gadget/udc/aspeed_udc.c
+++ b/drivers/usb/gadget/udc/aspeed_udc.c
@@ -665,7 +665,8 @@ static int ast_udc_ep_queue(struct usb_ep *_ep, struct usb_request *_req,
if (ep->ep.desc == NULL) {
if ((req->req.dma % 4) != 0) {
dev_warn(dev, "EP0 req dma alignment error\n");
- return -ESHUTDOWN;
+ rc = -ESHUTDOWN;
+ goto end;
}
ast_udc_ep0_queue(ep, req);