Message ID | 20240706034004.801329-11-mwen@igalia.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/amd/display: switch amdgpu_dm_connector to use struct drm_edid | expand |
On 2024-07-05 21:35, Melissa Wen wrote: > instead of parsing struct edid. A more informative commit message will be helpful. > > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 15 +++------------ > 1 file changed, 3 insertions(+), 12 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c > index 45c04de08c65..3fb07f437793 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c > @@ -97,9 +97,8 @@ enum dc_edid_status dm_helpers_parse_edid_caps( > const struct drm_edid *drm_edid = aconnector->drm_edid; > struct drm_edid_product_id product_id; > struct edid *edid_buf = edid ? (struct edid *) edid->raw_edid : NULL; > - int sad_count, sadb_count; > + int sad_count; > int i = 0; > - uint8_t *sadb = NULL; > > enum dc_edid_status result = EDID_OK; > > @@ -143,20 +142,12 @@ enum dc_edid_status dm_helpers_parse_edid_caps( > edid_caps->audio_modes[i].sample_size = sad.byte2; > } > > - sadb_count = drm_edid_to_speaker_allocation((struct edid *) edid->raw_edid, &sadb); > > - if (sadb_count < 0) { > - DRM_ERROR("Couldn't read Speaker Allocation Data Block: %d\n", sadb_count); > - sadb_count = 0; > - } > - > - if (sadb_count) > - edid_caps->speaker_flags = sadb[0]; > + if (connector->eld[DRM_ELD_SPEAKER]) > + edid_caps->speaker_flags = connector->eld[DRM_ELD_SPEAKER]; > else > edid_caps->speaker_flags = DEFAULT_SPEAKER_LOCATION; > > - kfree(sadb); > - > return result; > } >
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c index 45c04de08c65..3fb07f437793 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c @@ -97,9 +97,8 @@ enum dc_edid_status dm_helpers_parse_edid_caps( const struct drm_edid *drm_edid = aconnector->drm_edid; struct drm_edid_product_id product_id; struct edid *edid_buf = edid ? (struct edid *) edid->raw_edid : NULL; - int sad_count, sadb_count; + int sad_count; int i = 0; - uint8_t *sadb = NULL; enum dc_edid_status result = EDID_OK; @@ -143,20 +142,12 @@ enum dc_edid_status dm_helpers_parse_edid_caps( edid_caps->audio_modes[i].sample_size = sad.byte2; } - sadb_count = drm_edid_to_speaker_allocation((struct edid *) edid->raw_edid, &sadb); - if (sadb_count < 0) { - DRM_ERROR("Couldn't read Speaker Allocation Data Block: %d\n", sadb_count); - sadb_count = 0; - } - - if (sadb_count) - edid_caps->speaker_flags = sadb[0]; + if (connector->eld[DRM_ELD_SPEAKER]) + edid_caps->speaker_flags = connector->eld[DRM_ELD_SPEAKER]; else edid_caps->speaker_flags = DEFAULT_SPEAKER_LOCATION; - kfree(sadb); - return result; }
instead of parsing struct edid. Signed-off-by: Melissa Wen <mwen@igalia.com> --- .../drm/amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-)