1 From bf552083916a7f8800477b5986940d1c9a31b953 Mon Sep 17 00:00:00 2001
2 From: hongao <hongao@uniontech.com>
3 Date: Thu, 11 Nov 2021 11:32:07 +0800
4 Subject: drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors
6 From: hongao <hongao@uniontech.com>
8 commit bf552083916a7f8800477b5986940d1c9a31b953 upstream.
10 amdgpu_connector_vga_get_modes missed function amdgpu_get_native_mode
11 which assign amdgpu_encoder->native_mode with *preferred_mode result in
12 amdgpu_encoder->native_mode.clock always be 0. That will cause
13 amdgpu_connector_set_property returned early on:
14 if ((rmx_type != DRM_MODE_SCALE_NONE) &&
15 (amdgpu_encoder->native_mode.clock == 0))
16 when we try to set scaling mode Full/Full aspect/Center.
17 Add the missing function to amdgpu_connector_vga_get_mode can fix this.
18 It also works on dvi connectors because
19 amdgpu_connector_dvi_helper_funcs.get_mode use the same method.
21 Signed-off-by: hongao <hongao@uniontech.com>
22 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
23 Cc: stable@vger.kernel.org
24 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
26 drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 1 +
27 1 file changed, 1 insertion(+)
29 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
30 +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
31 @@ -829,6 +829,7 @@ static int amdgpu_connector_vga_get_mode
33 amdgpu_connector_get_edid(connector);
34 ret = amdgpu_connector_ddc_get_modes(connector);
35 + amdgpu_get_native_mode(connector);