[PATCH 13/13] drm/amd/display: move dc_sink from dc_edid to drm_edid

Jani Nikula jani.nikula at linux.intel.com
Mon Apr 14 10:20:54 UTC 2025


On Fri, 11 Apr 2025, Melissa Wen <mwen at igalia.com> wrote:
> +void dc_edid_copy_edid_to_sink(struct dc_sink *sink)
> +{
> +	const struct edid *edid;
> +	uint32_t edid_length;
> +
> +	edid = drm_edid_raw(sink->drm_edid); // FIXME: Get rid of drm_edid_raw()
> +	edid_length = EDID_LENGTH * (edid->extensions + 1);

I guess none of my concern, really, but here's a hint:

The underlying reason for me to create struct drm_edid to begin with,
make it opaque, and to go through all the trouble of converting tons of
code from struct edid to struct drm_edid was exactly the above statement
being replicated all over the place. It's fundamentally incompatible
with the HF-EEODB EDID extension block.

BR,
Jani.



> +	memcpy(sink->dc_edid.raw_edid, (uint8_t *) edid, edid_length);
> +	sink->dc_edid.length = edid_length;
>  }
>  
>  

-- 
Jani Nikula, Intel


More information about the dri-devel mailing list