diff --git a/[refs] b/[refs] index 6d18df71f90c..e88e76c10033 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 49e208346616328e535b5d6ecd510ab38f210858 +refs/heads/master: ff176a4e2972bdc7a8d65cdcb0bd0d26ab1528cf diff --git a/trunk/drivers/usb/gadget/pch_udc.c b/trunk/drivers/usb/gadget/pch_udc.c index 216f648bae6c..0c8dd81dddca 100644 --- a/trunk/drivers/usb/gadget/pch_udc.c +++ b/trunk/drivers/usb/gadget/pch_udc.c @@ -2150,7 +2150,10 @@ static void pch_udc_svc_control_out(struct pch_udc_dev *dev) pch_udc_set_dma(dev, DMA_DIR_RX); } else { /* control write */ - pch_udc_svc_data_out(dev, UDC_EP0OUT_IDX); + /* next function will pickuo an clear the status */ + ep->epsts = stat; + + pch_udc_svc_data_out(dev, 0); /* re-program desc. pointer for possible ZLPs */ pch_udc_ep_set_ddptr(ep, ep->td_data_phys); pch_udc_set_dma(dev, DMA_DIR_RX);