mbox series

[0/6] drm/bridge: add ycbcr_420_allowed support

Message ID 20241019-bridge-yuv420-v1-0-d74efac9e4e6@linaro.org (mailing list archive)
Headers show
Series drm/bridge: add ycbcr_420_allowed support | expand

Message

Dmitry Baryshkov Oct. 18, 2024, 9:49 p.m. UTC
One of the features that drm_bridge_connector can't handle currently is
setting of the ycbcr_420_allowed flag on the connector. Add the flag to
the drm_bridge struct and propagate it to the drm_connector as AND of
all flags in the bridge chain.

As an example of the conversion, enable the flag on the DW HDMI bridge,
MSM DP bridge, display connector drivers (for DisplayPort and HDMI
outputs) and AUX bridges.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
Dmitry Baryshkov (6):
      drm/display: bridge_connector: handle ycbcr_420_allowed
      drm/atomic: add interlaced and ycbcr_420 flags to connector's state dump
      drm/bridge: display-connector: allow YCbCr 420 for HDMI and DP
      drm/bridge: aux: allow interlaced and YCbCr 420 output
      drm/msm/dp: migrate the ycbcr_420_allowed to drm_bridge
      drm/bridge: dw-hdmi: set bridge's ycbcr_420_allowed flag

 drivers/gpu/drm/bridge/aux-bridge.c            |  4 ++++
 drivers/gpu/drm/bridge/aux-hpd-bridge.c        |  4 ++++
 drivers/gpu/drm/bridge/display-connector.c     |  4 ++++
 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c      |  3 +++
 drivers/gpu/drm/display/drm_bridge_connector.c |  6 ++++--
 drivers/gpu/drm/drm_atomic.c                   |  2 ++
 drivers/gpu/drm/msm/dp/dp_display.c            |  4 ++--
 drivers/gpu/drm/msm/dp/dp_drm.c                | 10 ++++------
 drivers/gpu/drm/msm/dp/dp_drm.h                |  7 ++++---
 include/drm/drm_bridge.h                       |  5 +++++
 10 files changed, 36 insertions(+), 13 deletions(-)
---
base-commit: 7f796de9da37b78e05edde94ebc7e3f9ee53b3b4
change-id: 20241018-bridge-yuv420-aab94d4575de

Best regards,

Comments

Maxime Ripard Oct. 21, 2024, 7:17 a.m. UTC | #1
On Sat, 19 Oct 2024 00:49:11 +0300, Dmitry Baryshkov wrote:
> One of the features that drm_bridge_connector can't handle currently is
> setting of the ycbcr_420_allowed flag on the connector. Add the flag to
> the drm_bridge struct and propagate it to the drm_connector as AND of
> all flags in the bridge chain.
> 
> 
> [ ... ]

Reviewed-by: Maxime Ripard <mripard@kernel.org>

Thanks!
Maxime
Neil Armstrong Oct. 21, 2024, 12:32 p.m. UTC | #2
Hi,

On 18/10/2024 23:49, Dmitry Baryshkov wrote:
> One of the features that drm_bridge_connector can't handle currently is
> setting of the ycbcr_420_allowed flag on the connector. Add the flag to
> the drm_bridge struct and propagate it to the drm_connector as AND of
> all flags in the bridge chain.
> 
> As an example of the conversion, enable the flag on the DW HDMI bridge,
> MSM DP bridge, display connector drivers (for DisplayPort and HDMI
> outputs) and AUX bridges.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> Dmitry Baryshkov (6):
>        drm/display: bridge_connector: handle ycbcr_420_allowed
>        drm/atomic: add interlaced and ycbcr_420 flags to connector's state dump
>        drm/bridge: display-connector: allow YCbCr 420 for HDMI and DP
>        drm/bridge: aux: allow interlaced and YCbCr 420 output
>        drm/msm/dp: migrate the ycbcr_420_allowed to drm_bridge

How do you plan to merge this serie ?

>        drm/bridge: dw-hdmi: set bridge's ycbcr_420_allowed flag
> 
>   drivers/gpu/drm/bridge/aux-bridge.c            |  4 ++++
>   drivers/gpu/drm/bridge/aux-hpd-bridge.c        |  4 ++++
>   drivers/gpu/drm/bridge/display-connector.c     |  4 ++++
>   drivers/gpu/drm/bridge/synopsys/dw-hdmi.c      |  3 +++
>   drivers/gpu/drm/display/drm_bridge_connector.c |  6 ++++--
>   drivers/gpu/drm/drm_atomic.c                   |  2 ++
>   drivers/gpu/drm/msm/dp/dp_display.c            |  4 ++--
>   drivers/gpu/drm/msm/dp/dp_drm.c                | 10 ++++------
>   drivers/gpu/drm/msm/dp/dp_drm.h                |  7 ++++---
>   include/drm/drm_bridge.h                       |  5 +++++
>   10 files changed, 36 insertions(+), 13 deletions(-)
> ---
> base-commit: 7f796de9da37b78e05edde94ebc7e3f9ee53b3b4
> change-id: 20241018-bridge-yuv420-aab94d4575de
> 
> Best regards,

Neil
Dmitry Baryshkov Oct. 21, 2024, 6:22 p.m. UTC | #3
On Mon, 21 Oct 2024 at 15:32, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>
> Hi,
>
> On 18/10/2024 23:49, Dmitry Baryshkov wrote:
> > One of the features that drm_bridge_connector can't handle currently is
> > setting of the ycbcr_420_allowed flag on the connector. Add the flag to
> > the drm_bridge struct and propagate it to the drm_connector as AND of
> > all flags in the bridge chain.
> >
> > As an example of the conversion, enable the flag on the DW HDMI bridge,
> > MSM DP bridge, display connector drivers (for DisplayPort and HDMI
> > outputs) and AUX bridges.
> >
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> > Dmitry Baryshkov (6):
> >        drm/display: bridge_connector: handle ycbcr_420_allowed
> >        drm/atomic: add interlaced and ycbcr_420 flags to connector's state dump
> >        drm/bridge: display-connector: allow YCbCr 420 for HDMI and DP
> >        drm/bridge: aux: allow interlaced and YCbCr 420 output
> >        drm/msm/dp: migrate the ycbcr_420_allowed to drm_bridge
>
> How do you plan to merge this serie ?

Once Abhinav ack's the msm/dp change, I'd like to land it through
drm-misc. I think it's the most logical way to go.
Neil Armstrong Oct. 22, 2024, 12:15 p.m. UTC | #4
On 21/10/2024 20:22, Dmitry Baryshkov wrote:
> On Mon, 21 Oct 2024 at 15:32, Neil Armstrong <neil.armstrong@linaro.org> wrote:
>>
>> Hi,
>>
>> On 18/10/2024 23:49, Dmitry Baryshkov wrote:
>>> One of the features that drm_bridge_connector can't handle currently is
>>> setting of the ycbcr_420_allowed flag on the connector. Add the flag to
>>> the drm_bridge struct and propagate it to the drm_connector as AND of
>>> all flags in the bridge chain.
>>>
>>> As an example of the conversion, enable the flag on the DW HDMI bridge,
>>> MSM DP bridge, display connector drivers (for DisplayPort and HDMI
>>> outputs) and AUX bridges.
>>>
>>> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
>>> ---
>>> Dmitry Baryshkov (6):
>>>         drm/display: bridge_connector: handle ycbcr_420_allowed
>>>         drm/atomic: add interlaced and ycbcr_420 flags to connector's state dump
>>>         drm/bridge: display-connector: allow YCbCr 420 for HDMI and DP
>>>         drm/bridge: aux: allow interlaced and YCbCr 420 output
>>>         drm/msm/dp: migrate the ycbcr_420_allowed to drm_bridge
>>
>> How do you plan to merge this serie ?
> 
> Once Abhinav ack's the msm/dp change, I'd like to land it through
> drm-misc. I think it's the most logical way to go.

Yup, Abhinav acked it, LGTM

Neil

> 
>
Dmitry Baryshkov Oct. 24, 2024, 7:54 p.m. UTC | #5
On Sat, 19 Oct 2024 00:49:11 +0300, Dmitry Baryshkov wrote:
> One of the features that drm_bridge_connector can't handle currently is
> setting of the ycbcr_420_allowed flag on the connector. Add the flag to
> the drm_bridge struct and propagate it to the drm_connector as AND of
> all flags in the bridge chain.
> 
> As an example of the conversion, enable the flag on the DW HDMI bridge,
> MSM DP bridge, display connector drivers (for DisplayPort and HDMI
> outputs) and AUX bridges.
> 
> [...]

Applied to drm-misc-next, thanks!

[1/6] drm/display: bridge_connector: handle ycbcr_420_allowed
      commit: 3ced1c68751299c0cdf6a1ceeafdbe77db7d4956
[2/6] drm/atomic: add interlaced and ycbcr_420 flags to connector's state dump
      commit: 58e6d652d138ef163d0b6b4d19f0fc9d4e8519fa
[3/6] drm/bridge: display-connector: allow YCbCr 420 for HDMI and DP
      commit: d5cd8280c52bad44d5943fa7501bf9f20718d432
[4/6] drm/bridge: aux: allow interlaced and YCbCr 420 output
      commit: c44a0faf5397134b3100c00cc8a8d72528bc422a
[5/6] drm/msm/dp: migrate the ycbcr_420_allowed to drm_bridge
      commit: 785324db2d7a44e866161b6309fbda9a2178d455
[6/6] drm/bridge: dw-hdmi: set bridge's ycbcr_420_allowed flag
      commit: 8a8fed657d0427f6765a48c93152a8d86cfe613c

Best regards,