drm/tilcdc: use pm_runtime_irq_safe()
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 27 May 2015 07:39:52 +0000 (10:39 +0300)
committerJyri Sarha <jsarha@ti.com>
Wed, 27 May 2015 10:13:33 +0000 (13:13 +0300)
tilcdc calls runtime PM get/put functions everywhere. Some of those
places will be called in irq context, crashing the driver.

As a quick fix, use pm_runtime_irq_safe() for tilcdc.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Jyri Sarha <jsarha@ti.com>
drivers/gpu/drm/tilcdc/tilcdc_drv.c

index fcc0508c58c009cbd973d4f53b73db9ecd5dff17..0f283a3b932cf5ed5d237701cae825df8a95d06d 100644 (file)
@@ -227,6 +227,7 @@ static int tilcdc_load(struct drm_device *dev, unsigned long flags)
        DBG("Maximum Pixel Clock Value %dKHz", priv->max_pixelclock);
 
        pm_runtime_enable(dev->dev);
+       pm_runtime_irq_safe(dev->dev);
 
        /* Determine LCD IP Version */
        pm_runtime_get_sync(dev->dev);