All of lore.kernel.org
 help / color / mirror / Atom feed
From: Harry Wentland <harry.wentland@amd.com>
To: <dri-devel@lists.freedesktop.org>, <amd-gfx@lists.freedesktop.org>
Cc: Sebastian Wick <sebastian.wick@redhat.com>,
	Leo Li <sunpeng.li@amd.com>, Melissa Wen <mwen@igalia.com>,
	Pekka Paalanen <ppaalanen@gmail.com>,
	Uma Shankar <uma.shankar@intel.com>,
	Vitaly.Prosyak@amd.com, Joshua Ashton <joshua@froggi.es>
Subject: [PATCH v5 09/13] drm/amd/display: Signal mode_changed if colorspace changed
Date: Tue, 6 Jun 2023 16:26:03 -0400	[thread overview]
Message-ID: <20230606202607.122914-10-harry.wentland@amd.com> (raw)
In-Reply-To: <20230606202607.122914-1-harry.wentland@amd.com>

We need to signal mode_changed to make sure we update the output
colorspace.

v2: No need to call drm_hdmi_avi_infoframe_colorimetry as DC does its
    own infoframe packing.

Signed-off-by: Harry Wentland <harry.wentland@amd.com>
Cc: Pekka Paalanen <ppaalanen@gmail.com>
Cc: Sebastian Wick <sebastian.wick@redhat.com>
Cc: Vitaly.Prosyak@amd.com
Cc: Uma Shankar <uma.shankar@intel.com>
Cc: Joshua Ashton <joshua@froggi.es>
Cc: Simon Ser <contact@emersion.fr>
Cc: Melissa Wen <mwen@igalia.com>
Cc: dri-devel@lists.freedesktop.org
Cc: amd-gfx@lists.freedesktop.org
Reviewed-by: Leo Li <sunpeng.li@amd.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index bdda136235af..793ea29b4cfe 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -6699,6 +6699,14 @@ amdgpu_dm_connector_atomic_check(struct drm_connector *conn,
 	if (!crtc)
 		return 0;
 
+	if (new_con_state->colorspace != old_con_state->colorspace) {
+		new_crtc_state = drm_atomic_get_crtc_state(state, crtc);
+		if (IS_ERR(new_crtc_state))
+			return PTR_ERR(new_crtc_state);
+
+		new_crtc_state->mode_changed = true;
+	}
+
 	if (!drm_connector_atomic_hdr_metadata_equal(old_con_state, new_con_state)) {
 		struct dc_info_packet hdr_infopacket;
 
@@ -6721,7 +6729,7 @@ amdgpu_dm_connector_atomic_check(struct drm_connector *conn,
 		 * set is permissible, however. So only force a
 		 * modeset if we're entering or exiting HDR.
 		 */
-		new_crtc_state->mode_changed =
+		new_crtc_state->mode_changed = new_crtc_state->mode_changed ||
 			!old_con_state->hdr_output_metadata ||
 			!new_con_state->hdr_output_metadata;
 	}
-- 
2.41.0


WARNING: multiple messages have this Message-ID (diff)
From: Harry Wentland <harry.wentland@amd.com>
To: <dri-devel@lists.freedesktop.org>, <amd-gfx@lists.freedesktop.org>
Cc: Sebastian Wick <sebastian.wick@redhat.com>,
	Leo Li <sunpeng.li@amd.com>, Simon Ser <contact@emersion.fr>,
	Melissa Wen <mwen@igalia.com>,
	Pekka Paalanen <ppaalanen@gmail.com>,
	Uma Shankar <uma.shankar@intel.com>,
	Vitaly.Prosyak@amd.com, Harry Wentland <harry.wentland@amd.com>,
	Joshua Ashton <joshua@froggi.es>
Subject: [PATCH v5 09/13] drm/amd/display: Signal mode_changed if colorspace changed
Date: Tue, 6 Jun 2023 16:26:03 -0400	[thread overview]
Message-ID: <20230606202607.122914-10-harry.wentland@amd.com> (raw)
In-Reply-To: <20230606202607.122914-1-harry.wentland@amd.com>

We need to signal mode_changed to make sure we update the output
colorspace.

v2: No need to call drm_hdmi_avi_infoframe_colorimetry as DC does its
    own infoframe packing.

Signed-off-by: Harry Wentland <harry.wentland@amd.com>
Cc: Pekka Paalanen <ppaalanen@gmail.com>
Cc: Sebastian Wick <sebastian.wick@redhat.com>
Cc: Vitaly.Prosyak@amd.com
Cc: Uma Shankar <uma.shankar@intel.com>
Cc: Joshua Ashton <joshua@froggi.es>
Cc: Simon Ser <contact@emersion.fr>
Cc: Melissa Wen <mwen@igalia.com>
Cc: dri-devel@lists.freedesktop.org
Cc: amd-gfx@lists.freedesktop.org
Reviewed-by: Leo Li <sunpeng.li@amd.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index bdda136235af..793ea29b4cfe 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -6699,6 +6699,14 @@ amdgpu_dm_connector_atomic_check(struct drm_connector *conn,
 	if (!crtc)
 		return 0;
 
+	if (new_con_state->colorspace != old_con_state->colorspace) {
+		new_crtc_state = drm_atomic_get_crtc_state(state, crtc);
+		if (IS_ERR(new_crtc_state))
+			return PTR_ERR(new_crtc_state);
+
+		new_crtc_state->mode_changed = true;
+	}
+
 	if (!drm_connector_atomic_hdr_metadata_equal(old_con_state, new_con_state)) {
 		struct dc_info_packet hdr_infopacket;
 
@@ -6721,7 +6729,7 @@ amdgpu_dm_connector_atomic_check(struct drm_connector *conn,
 		 * set is permissible, however. So only force a
 		 * modeset if we're entering or exiting HDR.
 		 */
-		new_crtc_state->mode_changed =
+		new_crtc_state->mode_changed = new_crtc_state->mode_changed ||
 			!old_con_state->hdr_output_metadata ||
 			!new_con_state->hdr_output_metadata;
 	}
-- 
2.41.0


  parent reply	other threads:[~2023-06-06 20:26 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-06 20:25 [PATCH v5 00/13] Enable Colorspace connector property in amdgpu Harry Wentland
2023-06-06 20:25 ` Harry Wentland
2023-06-06 20:25 ` [PATCH v5 01/13] drm/connector: Convert DRM_MODE_COLORIMETRY to enum Harry Wentland
2023-06-06 20:25   ` Harry Wentland
2023-06-06 20:25 ` [PATCH v5 02/13] drm/connector: Add enum documentation to drm_colorspace Harry Wentland
2023-06-06 20:25   ` Harry Wentland
2023-06-06 20:25 ` [PATCH v5 03/13] drm/connector: Pull out common create_colorspace_property code Harry Wentland
2023-06-06 20:25   ` Harry Wentland
2023-06-06 20:25 ` [PATCH v5 04/13] drm/connector: Use common colorspace_names array Harry Wentland
2023-06-06 20:25   ` Harry Wentland
2023-06-07  9:37   ` Simon Ser
2023-06-07  9:37     ` Simon Ser
2023-06-07  9:46   ` Simon Ser
2023-06-07  9:46     ` Simon Ser
2023-06-06 20:25 ` [PATCH v5 05/13] drm/connector: Print connector colorspace in state debugfs Harry Wentland
2023-06-06 20:25   ` Harry Wentland
2023-06-06 20:26 ` [PATCH v5 06/13] drm/connector: Allow drivers to pass list of supported colorspaces Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-07  9:42   ` Simon Ser
2023-06-07  9:42     ` Simon Ser
2023-06-06 20:26 ` [PATCH v5 07/13] drm/amd/display: Always pass connector_state to stream validation Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-06 20:26 ` [PATCH v5 08/13] drm/amd/display: Register Colorspace property for DP and HDMI Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-06 20:26 ` Harry Wentland [this message]
2023-06-06 20:26   ` [PATCH v5 09/13] drm/amd/display: Signal mode_changed if colorspace changed Harry Wentland
2023-06-06 20:26 ` [PATCH v5 10/13] drm/amd/display: Send correct DP colorspace infopacket Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-06 20:26 ` [PATCH v5 11/13] drm/amd/display: Always set crtcinfo from create_stream_for_sink Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-06 20:26 ` [PATCH v5 12/13] drm/amd/display: Add debugfs for testing output colorspace Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-06 20:26 ` [PATCH v5 13/13] drm/amd/display: Refactor avi_info_frame colorimetry determination Harry Wentland
2023-06-06 20:26   ` Harry Wentland
2023-06-06 20:53 ` [PATCH v5 00/13] Enable Colorspace connector property in amdgpu Joshua Ashton
2023-06-06 20:53   ` Joshua Ashton

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=20230606202607.122914-10-harry.wentland@amd.com \
    --to=harry.wentland@amd.com \
    --cc=Vitaly.Prosyak@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=joshua@froggi.es \
    --cc=mwen@igalia.com \
    --cc=ppaalanen@gmail.com \
    --cc=sebastian.wick@redhat.com \
    --cc=sunpeng.li@amd.com \
    --cc=uma.shankar@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.