All of lore.kernel.org
 help / color / mirror / Atom feed
* Patch "drm/radeon: change vblank_time's calculation method to reduce computational error." has been added to the 4.8-stable tree
@ 2016-10-28  8:46 gregkh
  0 siblings, 0 replies; only message in thread
From: gregkh @ 2016-10-28  8:46 UTC (permalink / raw)
  To: alexander.deucher, gregkh; +Cc: stable, stable-commits


This is a note to let you know that I've just added the patch titled

    drm/radeon: change vblank_time's calculation method to reduce computational error.

to the 4.8-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     drm-radeon-change-vblank_time-s-calculation-method-to-reduce-computational-error.patch
and it can be found in the queue-4.8 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From 02cfb5fccb0f9f968f0e208d89d9769aa16267bc Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexander.deucher@amd.com>
Date: Wed, 12 Oct 2016 15:28:55 -0400
Subject: drm/radeon: change vblank_time's calculation method to reduce computational error.

From: Alex Deucher <alexander.deucher@amd.com>

commit 02cfb5fccb0f9f968f0e208d89d9769aa16267bc upstream.

Ported from Rex's amdgpu change.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 drivers/gpu/drm/radeon/r600_dpm.c |   15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

--- a/drivers/gpu/drm/radeon/r600_dpm.c
+++ b/drivers/gpu/drm/radeon/r600_dpm.c
@@ -156,19 +156,20 @@ u32 r600_dpm_get_vblank_time(struct rade
 	struct drm_device *dev = rdev->ddev;
 	struct drm_crtc *crtc;
 	struct radeon_crtc *radeon_crtc;
-	u32 line_time_us, vblank_lines;
+	u32 vblank_in_pixels;
 	u32 vblank_time_us = 0xffffffff; /* if the displays are off, vblank time is max */
 
 	if (rdev->num_crtc && rdev->mode_info.mode_config_initialized) {
 		list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
 			radeon_crtc = to_radeon_crtc(crtc);
 			if (crtc->enabled && radeon_crtc->enabled && radeon_crtc->hw_mode.clock) {
-				line_time_us = (radeon_crtc->hw_mode.crtc_htotal * 1000) /
-					radeon_crtc->hw_mode.clock;
-				vblank_lines = radeon_crtc->hw_mode.crtc_vblank_end -
-					radeon_crtc->hw_mode.crtc_vdisplay +
-					(radeon_crtc->v_border * 2);
-				vblank_time_us = vblank_lines * line_time_us;
+				vblank_in_pixels =
+					radeon_crtc->hw_mode.crtc_htotal *
+					(radeon_crtc->hw_mode.crtc_vblank_end -
+					 radeon_crtc->hw_mode.crtc_vdisplay +
+					 (radeon_crtc->v_border * 2));
+
+				vblank_time_us = vblank_in_pixels * 1000 / radeon_crtc->hw_mode.clock;
 				break;
 			}
 		}


Patches currently in stable-queue which might be from alexander.deucher@amd.com are

queue-4.8/drm-amdgpu-dce11-add-missing-drm_mode_config_cleanup-call.patch
queue-4.8/drm-radeon-si-dpm-fix-phase-shedding-setup.patch
queue-4.8/drm-amdgpu-dce11-disable-hpd-on-local-panels.patch
queue-4.8/drm-amdgpu-dce8-disable-hpd-on-local-panels.patch
queue-4.8/drm-amdgpu-initialize-the-context-reset_counter-in-amdgpu_ctx_init.patch
queue-4.8/drm-amdgpu-dce10-disable-hpd-on-local-panels.patch
queue-4.8/drm-amd-powerplay-fix-mclk-not-switching-back-after-multi-head-was-disabled.patch
queue-4.8/drm-amdgpu-fix-ib-alignment-for-uvd.patch
queue-4.8/drm-amdgpu-change-vblank_time-s-calculation-method-to-reduce-computational-error.patch
queue-4.8/drm-radeon-narrow-asic_init-for-virtualization.patch
queue-4.8/drm-radeon-change-vblank_time-s-calculation-method-to-reduce-computational-error.patch

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-10-28  8:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-28  8:46 Patch "drm/radeon: change vblank_time's calculation method to reduce computational error." has been added to the 4.8-stable tree gregkh

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.