提交 7e804650 编写于 作者: R Robert Baldyga 提交者: Felipe Balbi

usb: gadget: s3c-hsotg: add DAINT masking

In OEPInt/IEPInt interrupts handling added bitwise and of DAINT and
DAINTMSK, because we should handle masked interrupts only.
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>
上级 afcf4169
......@@ -2433,10 +2433,14 @@ static irqreturn_t s3c_hsotg_irq(int irq, void *pw)
if (gintsts & (GINTSTS_OEPInt | GINTSTS_IEPInt)) {
u32 daint = readl(hsotg->regs + DAINT);
u32 daint_out = daint >> DAINT_OutEP_SHIFT;
u32 daint_in = daint & ~(daint_out << DAINT_OutEP_SHIFT);
u32 daintmsk = readl(hsotg->regs + DAINTMSK);
u32 daint_out, daint_in;
int ep;
daint &= daintmsk;
daint_out = daint >> DAINT_OutEP_SHIFT;
daint_in = daint & ~(daint_out << DAINT_OutEP_SHIFT);
dev_dbg(hsotg->dev, "%s: daint=%08x\n", __func__, daint);
for (ep = 0; ep < 15 && daint_out; ep++, daint_out >>= 1) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册