drm/amdgpu: Use drm_crtc_vblank_crtc()
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 8 Apr 2024 19:06:08 +0000 (22:06 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 8 May 2024 18:55:30 +0000 (21:55 +0300)
Replace the open coded drm_crtc_vblank_crtc() with the real
thing.

Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: "Christian König" <christian.koenig@amd.com>
Cc: "Pan, Xinhui" <Xinhui.Pan@amd.com>
Cc: amd-gfx@lists.freedesktop.org
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240408190611.24914-2-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index e30eecd..821f949 100644 (file)
@@ -65,9 +65,7 @@ static enum hrtimer_restart amdgpu_vkms_vblank_simulate(struct hrtimer *timer)
 
 static int amdgpu_vkms_enable_vblank(struct drm_crtc *crtc)
 {
-       struct drm_device *dev = crtc->dev;
-       unsigned int pipe = drm_crtc_index(crtc);
-       struct drm_vblank_crtc *vblank = &dev->vblank[pipe];
+       struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
        struct amdgpu_vkms_output *out = drm_crtc_to_amdgpu_vkms_output(crtc);
        struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
 
@@ -91,10 +89,8 @@ static bool amdgpu_vkms_get_vblank_timestamp(struct drm_crtc *crtc,
                                             ktime_t *vblank_time,
                                             bool in_vblank_irq)
 {
-       struct drm_device *dev = crtc->dev;
-       unsigned int pipe = crtc->index;
        struct amdgpu_vkms_output *output = drm_crtc_to_amdgpu_vkms_output(crtc);
-       struct drm_vblank_crtc *vblank = &dev->vblank[pipe];
+       struct drm_vblank_crtc *vblank = drm_crtc_vblank_crtc(crtc);
        struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc);
 
        if (!READ_ONCE(vblank->enabled)) {
index 73cb881..e1e1423 100644 (file)
@@ -531,7 +531,7 @@ static void dm_vupdate_high_irq(void *interrupt_params)
        if (acrtc) {
                vrr_active = amdgpu_dm_crtc_vrr_active_irq(acrtc);
                drm_dev = acrtc->base.dev;
-               vblank = &drm_dev->vblank[acrtc->base.index];
+               vblank = drm_crtc_vblank_crtc(&acrtc->base);
                previous_timestamp = atomic64_read(&irq_params->previous_timestamp);
                frame_duration_ns = vblank->time - previous_timestamp;