Skip to content
Snippets Groups Projects
Unverified Commit f0fa69b5 authored by Derek Foreman's avatar Derek Foreman Committed by Maxime Ripard
Browse files

drm/connector: hdmi: Fix writing Dynamic Range Mastering infoframes


The largest infoframe we create is the DRM (Dynamic Range Mastering)
infoframe which is 26 bytes + a 4 byte header, for a total of 30
bytes.

With HDMI_MAX_INFOFRAME_SIZE set to 29 bytes, as it is now, we
allocate too little space to pack a DRM infoframe in
write_device_infoframe(), leading to an ENOSPC return from
hdmi_infoframe_pack(), and never calling the connector's
write_infoframe() vfunc.

Instead of having HDMI_MAX_INFOFRAME_SIZE defined in two places,
replace HDMI_MAX_INFOFRAME_SIZE with HDMI_INFOFRAME_SIZE(MAX) and make
MAX 27 bytes - which is defined by the HDMI specification to be the
largest infoframe payload.

Fixes: f378b772 ("drm/connector: hdmi: Add Infoframes generation")
Fixes: c602e495 ("drm/connector: hdmi: Create Infoframe DebugFS entries")

Signed-off-by: default avatarDerek Foreman <derek.foreman@collabora.com>
Acked-by: default avatarMaxime Ripard <mripard@kernel.org>
Reviewed-by: default avatarJani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240827163918.48160-1-derek.foreman@collabora.com


Signed-off-by: default avatarMaxime Ripard <mripard@kernel.org>
parent 440d52b3
Branches
Tags
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment