[PATCH 4/6] drm/bridge: aux: allow interlaced and YCbCr 420 output

Dmitry Baryshkov posted 6 patches 1 month, 1 week ago
[PATCH 4/6] drm/bridge: aux: allow interlaced and YCbCr 420 output
Posted by Dmitry Baryshkov 1 month, 1 week ago
As both aux bridges are merely passthrough bridges, mark them as
supporting interlaced and YCbCr 420 data. Other bridges in the chain
still might limit interlaced and YCbCr 420 data support on the
corresponding connector.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
 drivers/gpu/drm/bridge/aux-bridge.c     | 4 ++++
 drivers/gpu/drm/bridge/aux-hpd-bridge.c | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/drivers/gpu/drm/bridge/aux-bridge.c b/drivers/gpu/drm/bridge/aux-bridge.c
index b29980f95379..e3e95ccec1ae 100644
--- a/drivers/gpu/drm/bridge/aux-bridge.c
+++ b/drivers/gpu/drm/bridge/aux-bridge.c
@@ -120,6 +120,10 @@ static int drm_aux_bridge_probe(struct auxiliary_device *auxdev,
 	data->bridge.funcs = &drm_aux_bridge_funcs;
 	data->bridge.of_node = data->dev->of_node;
 
+	/* passthrough data, allow everything */
+	data->bridge.interlace_allowed = true;
+	data->bridge.ycbcr_420_allowed = true;
+
 	return devm_drm_bridge_add(data->dev, &data->bridge);
 }
 
diff --git a/drivers/gpu/drm/bridge/aux-hpd-bridge.c b/drivers/gpu/drm/bridge/aux-hpd-bridge.c
index 6886db2d9e00..48f297c78ee6 100644
--- a/drivers/gpu/drm/bridge/aux-hpd-bridge.c
+++ b/drivers/gpu/drm/bridge/aux-hpd-bridge.c
@@ -180,6 +180,10 @@ static int drm_aux_hpd_bridge_probe(struct auxiliary_device *auxdev,
 	data->bridge.ops = DRM_BRIDGE_OP_HPD;
 	data->bridge.type = id->driver_data;
 
+	/* passthrough data, allow everything */
+	data->bridge.interlace_allowed = true;
+	data->bridge.ycbcr_420_allowed = true;
+
 	auxiliary_set_drvdata(auxdev, data);
 
 	return devm_drm_bridge_add(data->dev, &data->bridge);

-- 
2.39.5
Re: [PATCH 4/6] drm/bridge: aux: allow interlaced and YCbCr 420 output
Posted by Neil Armstrong 1 month ago
On 18/10/2024 23:49, Dmitry Baryshkov wrote:
> As both aux bridges are merely passthrough bridges, mark them as
> supporting interlaced and YCbCr 420 data. Other bridges in the chain
> still might limit interlaced and YCbCr 420 data support on the
> corresponding connector.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>   drivers/gpu/drm/bridge/aux-bridge.c     | 4 ++++
>   drivers/gpu/drm/bridge/aux-hpd-bridge.c | 4 ++++
>   2 files changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/bridge/aux-bridge.c b/drivers/gpu/drm/bridge/aux-bridge.c
> index b29980f95379..e3e95ccec1ae 100644
> --- a/drivers/gpu/drm/bridge/aux-bridge.c
> +++ b/drivers/gpu/drm/bridge/aux-bridge.c
> @@ -120,6 +120,10 @@ static int drm_aux_bridge_probe(struct auxiliary_device *auxdev,
>   	data->bridge.funcs = &drm_aux_bridge_funcs;
>   	data->bridge.of_node = data->dev->of_node;
>   
> +	/* passthrough data, allow everything */
> +	data->bridge.interlace_allowed = true;
> +	data->bridge.ycbcr_420_allowed = true;
> +
>   	return devm_drm_bridge_add(data->dev, &data->bridge);
>   }
>   
> diff --git a/drivers/gpu/drm/bridge/aux-hpd-bridge.c b/drivers/gpu/drm/bridge/aux-hpd-bridge.c
> index 6886db2d9e00..48f297c78ee6 100644
> --- a/drivers/gpu/drm/bridge/aux-hpd-bridge.c
> +++ b/drivers/gpu/drm/bridge/aux-hpd-bridge.c
> @@ -180,6 +180,10 @@ static int drm_aux_hpd_bridge_probe(struct auxiliary_device *auxdev,
>   	data->bridge.ops = DRM_BRIDGE_OP_HPD;
>   	data->bridge.type = id->driver_data;
>   
> +	/* passthrough data, allow everything */
> +	data->bridge.interlace_allowed = true;
> +	data->bridge.ycbcr_420_allowed = true;
> +
>   	auxiliary_set_drvdata(auxdev, data);
>   
>   	return devm_drm_bridge_add(data->dev, &data->bridge);
> 

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