[PATCH 1/3] drm/todo: Create a TODO item for additional HDMI work

Dmitry Baryshkov dmitry.baryshkov at linaro.org
Wed Jun 12 16:11:17 UTC 2024


On Wed, 12 Jun 2024 at 17:35, Maxime Ripard <mripard at kernel.org> wrote:
>
> We recently added some infrastructure to deal with HDMI but we're still
> lacking a couple of things. Add a TODO entry with the remaining items.
>
> Cc: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
> Signed-off-by: Maxime Ripard <mripard at kernel.org>
> ---
>  Documentation/gpu/todo.rst | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst
> index 2ea6ffc9b22b..52fd8672fb6d 100644
> --- a/Documentation/gpu/todo.rst
> +++ b/Documentation/gpu/todo.rst
> @@ -633,10 +633,39 @@ long as that supports DMA. Otherwise importing can still needlessly fail.
>
>  Contact: Thomas Zimmermann <tzimmermann at suse.de>, Daniel Vetter
>
>  Level: Advanced
>
> +Improve HDMI Infrastructure
> +---------------------------
> +
> +We have a bunch of helpers to handle HDMI and reduce the boilerplate in
> +drivers. Support so far includes HDMI 1.4 support, but we need to extend
> +it with:
> +
> +  - CEC handling support. CEC requires a bit of integration into every
> +    HDMI driver to set the device physical address according to the EDID
> +    in `.get_modes`, and to clear/reset it in the hotplug detection
> +    path. We should create the ``drm_atomic_helper_connector_hdmi_get_modes()``
> +    and ``drm_atomic_helper_connector_hdmi_handle_hotplug()`` helpers to handle
> +    this properly, and convert drivers to use them.
> +
> +  - In order to support HDMI 2.0 properly, the scrambler parameters need
> +    to be moved into the state. This includes figuring out in
> +    drm_atomic_helper_connector_hdmi_check() if the scrambler and TMDS ratio
> +    need to be changed, and make the
> +    ``drm_atomic_helper_connector_hdmi_handle_hotplug()`` helper reset the
> +    scrambler status when the device is plugged and unplugged.
> +
> +  - We need to support YUV420 too.

- HDMI audio improvements:
  - Implement the get_eld() and possibly hook_plugged_cb() functions
for hdmi_codec_ops in a generic way. Maybe implementing generic HDMI
hdmi_codec_ops and then providing device-specific hooks to prepare /
shutdown / mute stream.
  - provide helpers to determine ACR / N / CTS params

A different, but closely related topic is HDCP support in a generic
way. https://lore.kernel.org/dri-devel/20230419154321.1993419-1-markyacoub@google.com/

> +
> +The `vc4` driver is a good example for all this.
> +
> +Contact: Maxime Ripard <mripard at kernel.org>
> +
> +Level: Intermediate
> +
>
>  Better Testing
>  ==============
>
>  Add unit tests using the Kernel Unit Testing (KUnit) framework
> --
> 2.45.2
>


-- 
With best wishes
Dmitry


More information about the dri-devel mailing list