Use the vblank pointer instead of a dev, pipe pair to simplify
code. Rename to drm_vblank_crtc_get_last_timestamp().

v2: Rename (Thomas)

Reviewed-by: Thomas Zimmermann <[email protected]>
Signed-off-by: Jani Nikula <[email protected]>
---
 drivers/gpu/drm/drm_vblank.c | 20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/drm_vblank.c b/drivers/gpu/drm/drm_vblank.c
index 52fa4ca361e3..4a88cdea086d 100644
--- a/drivers/gpu/drm/drm_vblank.c
+++ b/drivers/gpu/drm/drm_vblank.c
@@ -162,9 +162,8 @@
  */
 #define DRM_REDUNDANT_VBLIRQ_THRESH_NS 1000000
 
-static bool
-drm_get_last_vbltimestamp(struct drm_device *dev, unsigned int pipe,
-                         ktime_t *tvblank, bool in_vblank_irq);
+static bool drm_vblank_crtc_get_last_timestamp(struct drm_vblank_crtc *vblank,
+                                              ktime_t *tvblank, bool 
in_vblank_irq);
 
 static unsigned int drm_timestamp_precision = 20;  /* Default to 20 usecs. */
 
@@ -253,7 +252,6 @@ static u32 drm_vblank_crtc_get_counter(struct 
drm_vblank_crtc *vblank)
 static void drm_vblank_crtc_reset_timestamp(struct drm_vblank_crtc *vblank)
 {
        struct drm_device *dev = vblank->dev;
-       unsigned int pipe = vblank->pipe;
        u32 cur_vblank;
        bool rc;
        ktime_t t_vblank;
@@ -267,7 +265,7 @@ static void drm_vblank_crtc_reset_timestamp(struct 
drm_vblank_crtc *vblank)
         */
        do {
                cur_vblank = drm_vblank_crtc_get_counter(vblank);
-               rc = drm_get_last_vbltimestamp(dev, pipe, &t_vblank, false);
+               rc = drm_vblank_crtc_get_last_timestamp(vblank, &t_vblank, 
false);
        } while (cur_vblank != drm_vblank_crtc_get_counter(vblank) && --count > 
0);
 
        /*
@@ -325,7 +323,7 @@ static void drm_vblank_crtc_update_count(struct 
drm_vblank_crtc *vblank,
         */
        do {
                cur_vblank = drm_vblank_crtc_get_counter(vblank);
-               rc = drm_get_last_vbltimestamp(dev, pipe, &t_vblank, 
in_vblank_irq);
+               rc = drm_vblank_crtc_get_last_timestamp(vblank, &t_vblank, 
in_vblank_irq);
        } while (cur_vblank != drm_vblank_crtc_get_counter(vblank) && --count > 
0);
 
        if (max_vblank_count) {
@@ -911,11 +909,10 @@ drm_crtc_get_last_vbltimestamp(struct drm_crtc *crtc, 
ktime_t *tvblank,
        return ret;
 }
 
-static bool
-drm_get_last_vbltimestamp(struct drm_device *dev, unsigned int pipe,
-                         ktime_t *tvblank, bool in_vblank_irq)
+static bool drm_vblank_crtc_get_last_timestamp(struct drm_vblank_crtc *vblank,
+                                              ktime_t *tvblank, bool 
in_vblank_irq)
 {
-       struct drm_crtc *crtc = drm_crtc_from_index(dev, pipe);
+       struct drm_crtc *crtc = drm_crtc_from_vblank(vblank);
 
        return drm_crtc_get_last_vbltimestamp(crtc, tvblank, in_vblank_irq);
 }
@@ -1555,7 +1552,6 @@ EXPORT_SYMBOL(drm_crtc_vblank_on);
 void drm_crtc_vblank_restore(struct drm_crtc *crtc)
 {
        struct drm_device *dev = crtc->dev;
-       unsigned int pipe = drm_crtc_index(crtc);
        struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
        ktime_t t_vblank;
        int framedur_ns;
@@ -1578,7 +1574,7 @@ void drm_crtc_vblank_restore(struct drm_crtc *crtc)
 
        do {
                cur_vblank = drm_vblank_crtc_get_counter(vblank);
-               drm_get_last_vbltimestamp(dev, pipe, &t_vblank, false);
+               drm_vblank_crtc_get_last_timestamp(vblank, &t_vblank, false);
        } while (cur_vblank != drm_vblank_crtc_get_counter(vblank) && --count > 
0);
 
        diff_ns = ktime_to_ns(ktime_sub(t_vblank, vblank->time));
-- 
2.47.3

Reply via email to