[PATCH] drm/bridge: document HDMI CEC callbacks

Neil Armstrong neil.armstrong at linaro.org
Mon Aug 4 15:38:50 UTC 2025


On 01/08/2025 12:46, Dmitry Baryshkov wrote:
> Provide documentation for the drm_bridge callbacks related to the
> DRM_BRIDGE_OP_HDMI_CEC_ADAPTER flag.
> 
> Fixes: a74288c8ded7 ("drm/display: bridge-connector: handle CEC adapters")
> Reported-by: Stephen Rothwell <sfr at canb.auug.org.au>
> Closes: https://lore.kernel.org/r/20250611140933.1429a1b8@canb.auug.org.au
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at oss.qualcomm.com>
> ---
>   include/drm/drm_bridge.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 48 insertions(+)
> 
> diff --git a/include/drm/drm_bridge.h b/include/drm/drm_bridge.h
> index 8ed80cad77ec4b40d0aa6159e802a2839d5b8792..b0e6653ee42ecc088f420a9a32cf3b0428737a4a 100644
> --- a/include/drm/drm_bridge.h
> +++ b/include/drm/drm_bridge.h
> @@ -866,13 +866,61 @@ struct drm_bridge_funcs {
>   				      struct drm_connector *connector,
>   				      bool enable, int direction);
>   
> +	/**
> +	 * @hdmi_cec_init:
> +	 *
> +	 * Initialize CEC part of the bridge.
> +	 *
> +	 * This callback is optional, it can be implemented by bridges that
> +	 * set the @DRM_BRIDGE_OP_HDMI_CEC_ADAPTER flag in their
> +	 * &drm_bridge->ops.
> +	 *
> +	 * Returns:
> +	 * 0 on success, a negative error code otherwise
> +	 */
>   	int (*hdmi_cec_init)(struct drm_bridge *bridge,
>   			     struct drm_connector *connector);
>   
> +	/**
> +	 * @hdmi_cec_enable:
> +	 *
> +	 * Enable or disable the CEC adapter inside the bridge.
> +	 *
> +	 * This callback is optional, it can be implemented by bridges that
> +	 * set the @DRM_BRIDGE_OP_HDMI_CEC_ADAPTER flag in their
> +	 * &drm_bridge->ops.
> +	 *
> +	 * Returns:
> +	 * 0 on success, a negative error code otherwise
> +	 */
>   	int (*hdmi_cec_enable)(struct drm_bridge *bridge, bool enable);
>   
> +	/**
> +	 * @hdmi_cec_log_addr:
> +	 *
> +	 * Set the logical address of the CEC adapter inside the bridge.
> +	 *
> +	 * This callback is optional, it can be implemented by bridges that
> +	 * set the @DRM_BRIDGE_OP_HDMI_CEC_ADAPTER flag in their
> +	 * &drm_bridge->ops.
> +	 *
> +	 * Returns:
> +	 * 0 on success, a negative error code otherwise
> +	 */
>   	int (*hdmi_cec_log_addr)(struct drm_bridge *bridge, u8 logical_addr);
>   
> +	/**
> +	 * @hdmi_cec_transmit:
> +	 *
> +	 * Transmit the message using the CEC adapter inside the bridge.
> +	 *
> +	 * This callback is optional, it can be implemented by bridges that
> +	 * set the @DRM_BRIDGE_OP_HDMI_CEC_ADAPTER flag in their
> +	 * &drm_bridge->ops.
> +	 *
> +	 * Returns:
> +	 * 0 on success, a negative error code otherwise
> +	 */
>   	int (*hdmi_cec_transmit)(struct drm_bridge *bridge, u8 attempts,
>   				 u32 signal_free_time, struct cec_msg *msg);
>   
> 
> ---
> base-commit: a933d3dc1968fcfb0ab72879ec304b1971ed1b9a
> change-id: 20250801-drm-hdmi-cec-docs-541ee6afa5fa
> 
> Best regards,

Reviewed-by: Neil Armstrong <neil.armstrong at linaro.org>


More information about the dri-devel mailing list