Commit 317aae73 authored by Tomi Valkeinen's avatar Tomi Valkeinen Committed by Jyri Sarha
Browse files

drm/tilcdc: cleanup irq handling



Cleanup irq handling. Clear the irq status unconditionally and
restructure the status bit conditions.

Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
[Added description to the patch]
Signed-off-by: default avatarJyri Sarha <jsarha@ti.com>
parent 31ec5a2c
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -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) {
	stat = tilcdc_read_irqstatus(dev);
	tilcdc_clear_irqstatus(dev, stat);
	} else {

	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;