The datasheet of the synopsys core describes only to overwrite the
active and halted bits in the qhead before priming any endpoint.
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Reviewed-by: Felipe Balbi <balbi@ti.com>
[Alex: fixed a case of line-too-long]
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
        /*  QH configuration */
        mEp->qh.ptr->td.next   = cpu_to_le32(mReq->dma);    /* TERMINATE = 0 */
-       mEp->qh.ptr->td.token &= cpu_to_le32(~TD_STATUS);   /* clear status */
+       mEp->qh.ptr->td.token &=
+               cpu_to_le32(~(TD_STATUS_HALTED|TD_STATUS_ACTIVE));
        mEp->qh.ptr->cap |=  cpu_to_le32(QH_ZLT);
 
        wmb();   /* synchronize before ep prime */