[PATCH] drm/amdgpu/virtual_dce: Virtual display doesn't support disable vblank immediately

Emily Deng Emily.Deng at amd.com
Fri Aug 18 05:48:41 UTC 2017


For virtual display, it uses software timer to emulate the vsync interrupt,
it doesn't have high precision, so doesn't support disable vblank immediately.

BUG: SWDEV-129274

Signed-off-by: Emily Deng <Emily.Deng at amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
index dc74c0b..914c5bf 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
@@ -237,9 +237,11 @@ int amdgpu_irq_init(struct amdgpu_device *adev)
 	}
 
 	if (!amdgpu_device_has_dc_support(adev)) {
-		/* Disable vblank irqs aggressively for power-saving */
-		/* XXX: can this be enabled for DC? */
-		adev->ddev->vblank_disable_immediate = true;
+		if (!adev->enable_virtual_display) {
+			/* Disable vblank irqs aggressively for power-saving */
+			/* XXX: can this be enabled for DC? */
+			adev->ddev->vblank_disable_immediate = true;
+		}
 
 		r = drm_vblank_init(adev->ddev, adev->mode_info.num_crtc);
 		if (r)
-- 
1.9.1



More information about the amd-gfx mailing list