On 26/04/16 23:35, Laurent Pinchart wrote: > As the FIFO underflow IRQ handler just prints an error message to the > kernel log, simplify the code by not registering one IRQ handler per > plane but print the messages directly from the main IRQ handler. > > Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/omapdrm/omap_drv.h | 2 +- > drivers/gpu/drm/omapdrm/omap_irq.c | 49 +++++++++++++++++++++++++++++++++--- > drivers/gpu/drm/omapdrm/omap_plane.c | 24 ------------------ > 3 files changed, 47 insertions(+), 28 deletions(-) > @@ -233,6 +271,11 @@ int omap_drm_irq_install(struct drm_device *dev) > > INIT_LIST_HEAD(&priv->irq_list); > > + priv->irq_mask = DISPC_IRQ_GFX_FIFO_UNDERFLOW > + | DISPC_IRQ_VID1_FIFO_UNDERFLOW > + | DISPC_IRQ_VID2_FIFO_UNDERFLOW > + | DISPC_IRQ_VID3_FIFO_UNDERFLOW; Not all VID overlays exist on all DSS versions, so we shouldn't register irqs that don't exist on the HW. Also, I do like it that we deal with crtc or plane interrupts in omap_crtc or omap_plane. Would similar approach here work as you use in the following patches, i.e. just call underflow-handler func in omap_plane.c directly, instead of using the registration mechanism? Tomi
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel