提交 317aae73 编写于 作者: T Tomi Valkeinen 提交者: Jyri Sarha

drm/tilcdc: cleanup irq handling

Cleanup irq handling. Clear the irq status unconditionally and
restructure the status bit conditions.
Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
[Added description to the patch]
Signed-off-by: NJyri Sarha <jsarha@ti.com>
上级 31ec5a2c
......@@ -656,11 +656,12 @@ irqreturn_t tilcdc_crtc_irq(struct drm_crtc *crtc)
struct tilcdc_crtc *tilcdc_crtc = to_tilcdc_crtc(crtc);
struct drm_device *dev = crtc->dev;
struct tilcdc_drm_private *priv = dev->dev_private;
uint32_t stat = tilcdc_read_irqstatus(dev);
uint32_t stat;
if (stat & LCDC_PL_LOAD_DONE) {
tilcdc_clear_irqstatus(dev, stat);
} else {
stat = tilcdc_read_irqstatus(dev);
tilcdc_clear_irqstatus(dev, stat);
if ((stat & LCDC_END_OF_FRAME0) || (stat & LCDC_END_OF_FRAME1)) {
struct drm_pending_vblank_event *event;
unsigned long flags;
uint32_t dirty = tilcdc_crtc->dirty & stat;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册