提交 5cb2ff0c 编写于 作者: R Robert Baldyga 提交者: Felipe Balbi

usb: gadget: s3c-hsotg: fix s3c_hsotg_write_fifo function for dedicated fifo mode

In s3c_hsotg_write_fifo function PTxFEmp/NPTxFEmp interrupts are enabled
only in shared-fifo mode. In dedicated-fifo mode they should not be used
(when enabled then cause interrupt storm).
Signed-off-by: NRobert Baldyga <r.baldyga@samsung.com>
Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: NFelipe Balbi <balbi@ti.com>
上级 ab93e014
......@@ -563,9 +563,11 @@ static int s3c_hsotg_write_fifo(struct s3c_hsotg *hsotg,
if (to_write > max_transfer) {
to_write = max_transfer;
s3c_hsotg_en_gsint(hsotg,
periodic ? GINTSTS_PTxFEmp :
GINTSTS_NPTxFEmp);
/* it's needed only when we do not use dedicated fifos */
if (!hsotg->dedicated_fifos)
s3c_hsotg_en_gsint(hsotg,
periodic ? GINTSTS_PTxFEmp :
GINTSTS_NPTxFEmp);
}
/* see if we can write data */
......@@ -590,9 +592,11 @@ static int s3c_hsotg_write_fifo(struct s3c_hsotg *hsotg,
* is more room left.
*/
s3c_hsotg_en_gsint(hsotg,
periodic ? GINTSTS_PTxFEmp :
GINTSTS_NPTxFEmp);
/* it's needed only when we do not use dedicated fifos */
if (!hsotg->dedicated_fifos)
s3c_hsotg_en_gsint(hsotg,
periodic ? GINTSTS_PTxFEmp :
GINTSTS_NPTxFEmp);
}
dev_dbg(hsotg->dev, "write %d/%d, can_write %d, done %d\n",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册