aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/omapdrm/omap_irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/omapdrm/omap_irq.c')
-rw-r--r--drivers/gpu/drm/omapdrm/omap_irq.c23
1 files changed, 5 insertions, 18 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_irq.c b/drivers/gpu/drm/omapdrm/omap_irq.c
index 1c826907dead..2fda60105b3c 100644
--- a/drivers/gpu/drm/omapdrm/omap_irq.c
+++ b/drivers/gpu/drm/omapdrm/omap_irq.c
@@ -39,11 +39,12 @@ static void omap_irq_update(struct drm_device *dev)
39 dispc_read_irqenable(); /* flush posted write */ 39 dispc_read_irqenable(); /* flush posted write */
40} 40}
41 41
42void __omap_irq_register(struct drm_device *dev, struct omap_drm_irq *irq) 42static void omap_irq_register(struct drm_device *dev, struct omap_drm_irq *irq)
43{ 43{
44 struct omap_drm_private *priv = dev->dev_private; 44 struct omap_drm_private *priv = dev->dev_private;
45 unsigned long flags; 45 unsigned long flags;
46 46
47 dispc_runtime_get();
47 spin_lock_irqsave(&list_lock, flags); 48 spin_lock_irqsave(&list_lock, flags);
48 49
49 if (!WARN_ON(irq->registered)) { 50 if (!WARN_ON(irq->registered)) {
@@ -53,21 +54,15 @@ void __omap_irq_register(struct drm_device *dev, struct omap_drm_irq *irq)
53 } 54 }
54 55
55 spin_unlock_irqrestore(&list_lock, flags); 56 spin_unlock_irqrestore(&list_lock, flags);
56}
57
58void omap_irq_register(struct drm_device *dev, struct omap_drm_irq *irq)
59{
60 dispc_runtime_get();
61
62 __omap_irq_register(dev, irq);
63
64 dispc_runtime_put(); 57 dispc_runtime_put();
65} 58}
66 59
67void __omap_irq_unregister(struct drm_device *dev, struct omap_drm_irq *irq) 60static void omap_irq_unregister(struct drm_device *dev,
61 struct omap_drm_irq *irq)
68{ 62{
69 unsigned long flags; 63 unsigned long flags;
70 64
65 dispc_runtime_get();
71 spin_lock_irqsave(&list_lock, flags); 66 spin_lock_irqsave(&list_lock, flags);
72 67
73 if (!WARN_ON(!irq->registered)) { 68 if (!WARN_ON(!irq->registered)) {
@@ -77,14 +72,6 @@ void __omap_irq_unregister(struct drm_device *dev, struct omap_drm_irq *irq)
77 } 72 }
78 73
79 spin_unlock_irqrestore(&list_lock, flags); 74 spin_unlock_irqrestore(&list_lock, flags);
80}
81
82void omap_irq_unregister(struct drm_device *dev, struct omap_drm_irq *irq)
83{
84 dispc_runtime_get();
85
86 __omap_irq_unregister(dev, irq);
87
88 dispc_runtime_put(); 75 dispc_runtime_put();
89} 76}
90 77