diff --git a/drivers/usb/gadget/udc/bdc/bdc_ep.c b/drivers/usb/gadget/udc/bdc/bdc_ep.c index 15da5b1e76c0bc23078dc2560a9c4c8fa1398fbb..ff67ceac77c410a8f6a9ab27fc63f63afd9dc01b 100644 --- a/drivers/usb/gadget/udc/bdc/bdc_ep.c +++ b/drivers/usb/gadget/udc/bdc/bdc_ep.c @@ -457,10 +457,11 @@ static int setup_bd_list_xfr(struct bdc *bdc, struct bdc_req *req, int num_bds) dword3 |= BD_SOT|BD_SBF|(tfs<ep_num == 1) + if (ep->ep_num == 1) { ret = setup_first_bd_ep0(bdc, req, &dword3); if (ret) return ret; + } } if (!req->ep->dir) dword3 |= BD_ISP;