Re: [PATCH v2] drm/amdgpu: fix that issue that the number of the crtc of the 3250c is not correct

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[Cc: Remove undeliverable Chun Ming Zhou <mailto:David1.Zhou@xxxxxxx>]

Am 30.03.22 um 08:34 schrieb Paul Menzel:
Dear Tsung-Hua,


Thank you for your patch.

Am 30.03.22 um 04:46 schrieb Ryan Lin:

The commit message summary is quite long and confusing. Maybe:

Use 3 CRTC for 3250c to get internal display working

[Why]
External displays take priority over internal display when there are fewer
display controllers than displays.

This causes the internal display to not work on the Chromebook google/zork.

[How]
The root cause is because of that number of the crtc is not correct.

The root cause is the incorrect number of four configured CRTCs.

The number of the crtc on the 3250c is 3, but on the 3500c is 4.
On the source code, we can see that number of the crtc has been fixed at 4.
Needs to set the num_crtc to 3 for 3250c platform.

Please do not wrap lines after each sentence, and use a text width of 75 characters.

v2:
    - remove unnecessary comments and Id

Signed-off-by: Ryan Lin <tsung-hua.lin@xxxxxxx>

---
  drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 12 +++++++++---
  1 file changed, 9 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 40c91b448f7da..455a2c45e8cda 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -2738,9 +2738,15 @@ static int dm_early_init(void *handle)
          break;
  #if defined(CONFIG_DRM_AMD_DC_DCN1_0)
      case CHIP_RAVEN:
-        adev->mode_info.num_crtc = 4;
-        adev->mode_info.num_hpd = 4;
-        adev->mode_info.num_dig = 4;
+        if (adev->rev_id >= 8) {

Is there some define for that number? Maybe add a comment, that it’s for 3250c?


Kind regards,

Paul


+            adev->mode_info.num_crtc = 3;
+            adev->mode_info.num_hpd = 3;
+            adev->mode_info.num_dig = 3;
+        } else {
+            adev->mode_info.num_crtc = 4;
+            adev->mode_info.num_hpd = 4;
+            adev->mode_info.num_dig = 4;
+        }
          break;
  #endif
  #if defined(CONFIG_DRM_AMD_DC_DCN2_0)



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux