From: Pekka Paalanen <ppaalanen@gmail.com>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: Sebastian Wick <sebastian.wick@redhat.com>,
amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
Harry Wentland <harry.wentland@amd.com>,
Joshua Ashton <joshua@froggi.es>,
Vitaly.Prosyak@amd.com
Subject: Re: [PATCH v3 09/17] drm/amd/display: Register Colorspace property for DP and HDMI
Date: Fri, 17 Mar 2023 10:53:35 +0200 [thread overview]
Message-ID: <20230317105335.45d6a629@eldfell> (raw)
In-Reply-To: <ZBOf0m6W3ZWPy7nc@intel.com>
[-- Attachment #1: Type: text/plain, Size: 4446 bytes --]
On Fri, 17 Mar 2023 01:01:38 +0200
Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Thu, Mar 16, 2023 at 10:13:54PM +0100, Sebastian Wick wrote:
> > On Thu, Mar 16, 2023 at 1:35 PM Ville Syrjälä
> > <ville.syrjala@linux.intel.com> wrote:
> > >
> > > On Thu, Mar 16, 2023 at 01:34:49PM +0200, Pekka Paalanen wrote:
> > > > On Thu, 16 Mar 2023 12:47:51 +0200
> > > > Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> > > >
> > > > > On Thu, Mar 16, 2023 at 12:07:01PM +0200, Pekka Paalanen wrote:
> > > > > > On Thu, 16 Mar 2023 11:50:27 +0200
> > > > > > Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> > > > > >
> > > > > > > On Thu, Mar 16, 2023 at 01:37:24AM +0100, Sebastian Wick wrote:
> > > > > > > > On Tue, Mar 7, 2023 at 4:12 PM Harry Wentland <harry.wentland@amd.com> wrote:
> > > > > > > > >
> > > > > > > > > We want compositors to be able to set the output
> > > > > > > > > colorspace on DP and HDMI outputs, based on the
> > > > > > > > > caps reported from the receiver via EDID.
> > > > > > > >
> > > > > > > > About that... The documentation says that user space has to check the
> > > > > > > > EDID for what the sink actually supports. So whatever is in
> > > > > > > > supported_colorspaces is just what the driver/hardware is able to set
> > > > > > > > but doesn't actually indicate that the sink supports it.
> > > > > > > >
> > > > > > > > So the only way to enable bt2020 is by checking if the sink supports
> > > > > > > > both RGB and YUV variants because both could be used by the driver.
> > > > > > > > Not great at all. Something to remember for the new property.
> > > > > > >
> > > > > > > Hmm. I wonder if that's even legal... Looks like maybe it
> > > > > > > is since I can't immediately spot anything in CTA-861 to
> > > > > > > forbid it :/
> > > > > >
> > > > > > Wouldn't the driver do the same EDID check before choosing whether it
> > > > > > uses RGB or YCbCr signalling?
> > > > >
> > > > > I suppose it could. The modeset would then fail, which is perhaps
> > > >
> > > > Could? What are they missing?
> > >
> > > The fact that the new property that also affects the rgb->ycbcr matrix
> > > doesn't even exist?
> >
> > I think the question was about the current Colorspace property.
Yes.
We need to be able to set ColourPrimaries infoframe field for the sink.
Only userspace knows what ColourPrimaries it uses, and the driver has
no need to care at all, other than tell the sink what we have.
When a driver chooses to use YCbCr, it needs to use the
MatrixCoefficients the sink expects.
If we send the infoframe to the sink telling the signal uses BT.2020
ColourPrimaries, does that same bit pattern also tell the sink we are
using the BT.2020 NCL MatrixCoefficients if the driver chooses YCbCr?
Do drivers actually use BT.2020 NCL MatrixCoefficients in that case?
If they don't, then YCbCr BT.2020 has never worked, which is another
nail in the coffin for "Colorspace" property. But it still means that
RGB BT.2020 may have worked correctly, and then drivers would regress
if they started picking YCbCr for any reason where they previously used
RGB.
> > > >
> > > > I mean, drivers are already automatically choosing between RGB and YCbCr
> > > > signalling based on e.g. available bandwidth. Surely they already will
> > > > not attempt to send a signal format to a monitor that does not say it
> > > > supports that?
> >
> > That's exactly what they do. The drivers don't check the EDID for the
> > colorimetry the sink supports and the responsibility is punted off to
> > user space.
I suspect there are two different things:
- which of RGB, YCbCr 4:4:4, YCbCr 4:2:0 can the sink take
- the supported MatrixCoefficients for each of the YCbCr
Surely drivers are already checking the former point?
I'm not surprised if they are not checking the latter point, but they
do need to, because it is the driver making the choice between RGB and
some YCbCr.
> > >
> > > We just signal default/bt.709 colorimetry. There is nothing to
> > > check for those IIRC.
> >
> > You do support bt.2020, no?
>
> Not for rgb->ycbcr conversion.
I see there is confusion about what "colorimetry" is.
Please, let's use the H.273 terminology to make the difference clear
between ColourPrimaries and MatrixCoefficients.
Thanks,
pq
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2023-03-17 8:53 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-07 15:10 [PATCH v3 00/17] Enable Colorspace connector property in amdgpu Harry Wentland
2023-03-07 15:10 ` [PATCH v3 01/17] drm/connector: Convert DRM_MODE_COLORIMETRY to enum Harry Wentland
2023-03-07 15:13 ` Simon Ser
2023-03-07 15:29 ` [PATCH v4 " Harry Wentland
2023-03-08 8:21 ` Pekka Paalanen
2023-03-07 15:10 ` [PATCH v3 02/17] drm/connector: Add enum documentation to drm_colorspace Harry Wentland
2023-03-08 8:59 ` Pekka Paalanen
2023-03-09 0:56 ` Sebastian Wick
2023-03-09 10:03 ` Pekka Paalanen
2023-03-09 20:23 ` Sebastian Wick
2023-05-24 17:00 ` Harry Wentland
2023-03-07 15:10 ` [PATCH v3 03/17] drm/connector: Deprecate split for BT.2020 in drm_colorspace enum Harry Wentland
2023-03-08 9:09 ` Pekka Paalanen
2023-03-09 1:05 ` Sebastian Wick
2023-03-09 1:10 ` Ville Syrjälä
2023-05-24 17:01 ` Harry Wentland
2023-03-07 15:10 ` [PATCH v3 04/17] drm/connector: Pull out common create_colorspace_property code Harry Wentland
2023-03-07 15:10 ` [PATCH v3 05/17] drm/connector: Use common colorspace_names array Harry Wentland
2023-03-08 9:15 ` Pekka Paalanen
2023-03-09 1:39 ` Sebastian Wick
2023-03-07 15:10 ` [PATCH v3 06/17] drm/connector: Print connector colorspace in state debugfs Harry Wentland
2023-03-08 9:19 ` Pekka Paalanen
2023-03-07 15:10 ` [PATCH v3 07/17] drm/connector: Allow drivers to pass list of supported colorspaces Harry Wentland
2023-03-07 15:10 ` [PATCH v3 08/17] drm/amd/display: Always pass connector_state to stream validation Harry Wentland
2023-03-07 15:10 ` [PATCH v3 09/17] drm/amd/display: Register Colorspace property for DP and HDMI Harry Wentland
2023-03-08 9:24 ` Pekka Paalanen
2023-05-24 18:16 ` Harry Wentland
2023-03-16 0:37 ` Sebastian Wick
2023-03-16 9:50 ` Ville Syrjälä
2023-03-16 10:07 ` Pekka Paalanen
2023-03-16 10:47 ` Ville Syrjälä
2023-03-16 11:34 ` Pekka Paalanen
2023-03-16 12:35 ` Ville Syrjälä
2023-03-16 21:13 ` Sebastian Wick
2023-03-16 23:01 ` Ville Syrjälä
2023-03-17 8:53 ` Pekka Paalanen [this message]
2023-03-17 12:50 ` Ville Syrjälä
2023-03-17 13:35 ` Pekka Paalanen
2023-03-17 13:53 ` Joshua Ashton
2023-05-24 19:51 ` Harry Wentland
2023-03-17 14:14 ` Ville Syrjälä
2023-03-17 15:37 ` Pekka Paalanen
2023-03-17 16:33 ` Ville Syrjälä
2023-03-17 17:40 ` Sebastian Wick
2023-03-17 18:38 ` Ville Syrjälä
2023-03-17 18:47 ` Sebastian Wick
2023-03-17 19:13 ` Ville Syrjälä
2023-03-07 15:11 ` [PATCH v3 10/17] drm/amd/display: Signal mode_changed if colorspace changed Harry Wentland
2023-03-07 15:11 ` [PATCH v3 11/17] drm/amd/display: Send correct DP colorspace infopacket Harry Wentland
2023-03-09 1:58 ` Sebastian Wick
2023-03-07 15:11 ` [PATCH v3 12/17] drm/amd/display: Always set crtcinfo from create_stream_for_sink Harry Wentland
2023-03-07 15:11 ` [PATCH v3 13/17] drm/amd/display: Add support for explicit BT601_YCC Harry Wentland
2023-03-07 15:11 ` [PATCH v3 14/17] drm/amd/display: Add debugfs for testing output colorspace Harry Wentland
2023-03-08 9:30 ` Pekka Paalanen
2023-03-09 2:05 ` Sebastian Wick
2023-03-07 15:11 ` [PATCH v3 15/17] drm/amd/display: Add default case for output_color_space switch Harry Wentland
2023-03-08 9:35 ` Pekka Paalanen
2023-03-07 15:11 ` [PATCH v3 16/17] drm/amd/display: Fallback to 2020_YCBCR if the pixel encoding is not RGB Harry Wentland
2023-03-07 15:11 ` [PATCH v3 17/17] drm/amd/display: Refactor avi_info_frame colorimetry determination Harry Wentland
2023-03-08 9:38 ` [PATCH v3 00/17] Enable Colorspace connector property in amdgpu Pekka Paalanen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230317105335.45d6a629@eldfell \
--to=ppaalanen@gmail.com \
--cc=Vitaly.Prosyak@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=harry.wentland@amd.com \
--cc=joshua@froggi.es \
--cc=sebastian.wick@redhat.com \
--cc=ville.syrjala@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox