For historical reasons it's called dev->num_crtcs, which is rather
confusing ever since kms was added. But now we have a nice helper, so
let's use it for better readability!

Only code change is in atomic helpers: vblank support means that
dev->irq_enabled must be set too. Another one of these quirky things
... But since it's implied we can simplify that check.

Signed-off-by: Daniel Vetter <daniel.vet...@intel.com>
Cc: Maarten Lankhorst <maarten.lankho...@linux.intel.com>
Cc: Maxime Ripard <mrip...@kernel.org>
Cc: Thomas Zimmermann <tzimmerm...@suse.de>
Cc: David Airlie <airl...@linux.ie>
Cc: Daniel Vetter <dan...@ffwll.ch>
---
 drivers/gpu/drm/drm_atomic_helper.c |  2 +-
 drivers/gpu/drm/drm_irq.c           |  2 +-
 drivers/gpu/drm/drm_vblank.c        | 14 +++++++-------
 3 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic_helper.c 
b/drivers/gpu/drm/drm_atomic_helper.c
index 85d163f16801..a1898c58ae3c 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -1097,7 +1097,7 @@ disable_outputs(struct drm_device *dev, struct 
drm_atomic_state *old_state)
                else if (funcs->dpms)
                        funcs->dpms(crtc, DRM_MODE_DPMS_OFF);
 
-               if (!(dev->irq_enabled && dev->num_crtcs))
+               if (!drm_dev_has_vblank(dev))
                        continue;
 
                ret = drm_crtc_vblank_get(crtc);
diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index 588be45abd7a..09d6e9e2e075 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -181,7 +181,7 @@ int drm_irq_uninstall(struct drm_device *dev)
         * vblank/irq handling. KMS drivers must ensure that vblanks are all
         * disabled when uninstalling the irq handler.
         */
-       if (dev->num_crtcs) {
+       if (drm_dev_has_vblank(dev)) {
                spin_lock_irqsave(&dev->vbl_lock, irqflags);
                for (i = 0; i < dev->num_crtcs; i++) {
                        struct drm_vblank_crtc *vblank = &dev->vblank[i];
diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c
index 8837bebc7e13..e2beacafaa28 100644
--- a/drivers/gpu/drm/drm_vblank.c
+++ b/drivers/gpu/drm/drm_vblank.c
@@ -604,7 +604,7 @@ void drm_calc_timestamping_constants(struct drm_crtc *crtc,
        int linedur_ns = 0, framedur_ns = 0;
        int dotclock = mode->crtc_clock;
 
-       if (!dev->num_crtcs)
+       if (!drm_dev_has_vblank(dev))
                return;
 
        if (WARN_ON(pipe >= dev->num_crtcs))
@@ -1064,7 +1064,7 @@ void drm_crtc_send_vblank_event(struct drm_crtc *crtc,
        unsigned int pipe = drm_crtc_index(crtc);
        ktime_t now;
 
-       if (dev->num_crtcs > 0) {
+       if (drm_dev_has_vblank(dev)) {
                seq = drm_vblank_count_and_time(dev, pipe, &now);
        } else {
                seq = 0;
@@ -1136,7 +1136,7 @@ static int drm_vblank_get(struct drm_device *dev, 
unsigned int pipe)
        unsigned long irqflags;
        int ret = 0;
 
-       if (!dev->num_crtcs)
+       if (!drm_dev_has_vblank(dev))
                return -EINVAL;
 
        if (WARN_ON(pipe >= dev->num_crtcs))
@@ -1505,7 +1505,7 @@ static void drm_legacy_vblank_pre_modeset(struct 
drm_device *dev,
        struct drm_vblank_crtc *vblank = &dev->vblank[pipe];
 
        /* vblank is not initialized (IRQ not installed ?), or has been freed */
-       if (!dev->num_crtcs)
+       if (!drm_dev_has_vblank(dev))
                return;
 
        if (WARN_ON(pipe >= dev->num_crtcs))
@@ -1532,7 +1532,7 @@ static void drm_legacy_vblank_post_modeset(struct 
drm_device *dev,
        unsigned long irqflags;
 
        /* vblank is not initialized (IRQ not installed ?), or has been freed */
-       if (!dev->num_crtcs)
+       if (!drm_dev_has_vblank(dev))
                return;
 
        if (WARN_ON(pipe >= dev->num_crtcs))
@@ -1557,7 +1557,7 @@ int drm_legacy_modeset_ctl_ioctl(struct drm_device *dev, 
void *data,
        unsigned int pipe;
 
        /* If drm_vblank_init() hasn't been called yet, just no-op */
-       if (!dev->num_crtcs)
+       if (!drm_dev_has_vblank(dev))
                return 0;
 
        /* KMS drivers handle this internally */
@@ -1895,7 +1895,7 @@ bool drm_handle_vblank(struct drm_device *dev, unsigned 
int pipe)
        unsigned long irqflags;
        bool disable_irq;
 
-       if (WARN_ON_ONCE(!dev->num_crtcs))
+       if (WARN_ON_ONCE(!drm_dev_has_vblank(dev)))
                return false;
 
        if (WARN_ON(pipe >= dev->num_crtcs))
-- 
2.26.2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to