RE: [PATCH] drm/amd/display: Fix the display corruption issue on Navi10

2020-10-21 Thread Li, Roman
[AMD Public Use]

Reviewed-by: Roman Li 

-Original Message-
From: Yifan Zhang  
Sent: Wednesday, October 21, 2020 10:24 AM
To: amd-gfx@lists.freedesktop.org
Cc: Li, Sun peng (Leo) ; Wentland, Harry 
; Li, Roman ; Zhang, Yifan1 
; Deucher, Alexander 
Subject: [PATCH] drm/amd/display: Fix the display corruption issue on Navi10

[Why]
Screen corruption on Navi10 card

[How]
Set system context in DCN only on Renoir

Acked-by: Alex Deucher 
Signed-off-by: Yifan Zhang 
Signed-off-by: Roman Li 
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 +++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 71ecd963759e..ed0e7680b420 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -1061,10 +1061,14 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
 
dc_hardware_init(adev->dm.dc);
 
-   mmhub_read_system_context(adev, _config);
+#if defined(CONFIG_DRM_AMD_DC_DCN)
+   if (adev->asic_type == CHIP_RENOIR) {
+   mmhub_read_system_context(adev, _config);
 
-   // Call the DC init_memory func
-   dc_setup_system_context(adev->dm.dc, _config);
+   // Call the DC init_memory func
+   dc_setup_system_context(adev->dm.dc, _config);
+   }
+#endif
 
adev->dm.freesync_module = mod_freesync_create(adev->dm.dc);
if (!adev->dm.freesync_module) {
-- 
2.25.1
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


Re: [PATCH] drm/amd/display: Fix the display corruption issue on Navi10

2020-10-20 Thread Matt Coffin
Thanks for the quick resolution! Might want to add a Fixes header just
for reference when people are reading commit messages?

I can confirm that this fixed the issue introduced by that previous
patch, though!

Patch is Tested-by: Matt Coffin 

On 10/20/20 12:48 AM, Yifan Zhang wrote:
> [Why]
> Screen corruption on Navi10 card
> 
> [How]
> Set system context in DCN only on Renoir and Cezanne
> 
> Signed-off-by: Yifan Zhang 
> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 8 +---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 3d534a4da20b..6855aad7f312 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -1061,10 +1061,12 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>  
>   dc_hardware_init(adev->dm.dc);
>  
> - mmhub_read_system_context(adev, _config);
> + if (adev->asic_type == CHIP_RENOIR) {
> + mmhub_read_system_context(adev, _config);
>  
> - // Call the DC init_memory func
> - dc_setup_system_context(adev->dm.dc, _config);
> + // Call the DC init_memory func
> + dc_setup_system_context(adev->dm.dc, _config);
> + }
>  
>   adev->dm.freesync_module = mod_freesync_create(adev->dm.dc);
>   if (!adev->dm.freesync_module) {
> 
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


Re: [PATCH] drm/amd/display: Fix the display corruption issue on Navi10

2020-10-20 Thread Alex Deucher
On Tue, Oct 20, 2020 at 2:49 AM Yifan Zhang  wrote:
>
> [Why]
> Screen corruption on Navi10 card
>
> [How]
> Set system context in DCN only on Renoir and Cezanne
>
> Signed-off-by: Yifan Zhang 

Acked-by: Alex Deucher 

> ---
>  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 8 +---
>  1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 3d534a4da20b..6855aad7f312 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -1061,10 +1061,12 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
>
> dc_hardware_init(adev->dm.dc);
>
> -   mmhub_read_system_context(adev, _config);
> +   if (adev->asic_type == CHIP_RENOIR) {
> +   mmhub_read_system_context(adev, _config);
>
> -   // Call the DC init_memory func
> -   dc_setup_system_context(adev->dm.dc, _config);
> +   // Call the DC init_memory func
> +   dc_setup_system_context(adev->dm.dc, _config);
> +   }
>
> adev->dm.freesync_module = mod_freesync_create(adev->dm.dc);
> if (!adev->dm.freesync_module) {
> --
> 2.17.1
>
> ___
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx