]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
5.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 25 Jun 2024 06:46:04 +0000 (08:46 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 25 Jun 2024 06:46:04 +0000 (08:46 +0200)
added patches:
drm-amd-display-revert-exit-idle-optimizations-before-hdcp-execution.patch

queue-5.10/drm-amd-display-revert-exit-idle-optimizations-before-hdcp-execution.patch [new file with mode: 0644]
queue-5.10/series

diff --git a/queue-5.10/drm-amd-display-revert-exit-idle-optimizations-before-hdcp-execution.patch b/queue-5.10/drm-amd-display-revert-exit-idle-optimizations-before-hdcp-execution.patch
new file mode 100644 (file)
index 0000000..13be822
--- /dev/null
@@ -0,0 +1,78 @@
+From f2703a3596a279b0be6eeed4c500bdbaa8dc3ce4 Mon Sep 17 00:00:00 2001
+From: Martin Leung <martin.leung@amd.com>
+Date: Mon, 26 Feb 2024 13:20:08 -0500
+Subject: drm/amd/display: revert Exit idle optimizations before HDCP execution
+
+From: Martin Leung <martin.leung@amd.com>
+
+commit f2703a3596a279b0be6eeed4c500bdbaa8dc3ce4 upstream.
+
+why and how:
+causes black screen on PNP on DCN 3.5
+
+This reverts commit f30a3bea92bd ("drm/amd/display: Exit idle
+optimizations before HDCP execution")
+
+Cc: Mario Limonciello <mario.limonciello@amd.com>
+Cc: Alex Deucher <alexander.deucher@amd.com>
+Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
+Acked-by: Wayne Lin <wayne.lin@amd.com>
+Signed-off-by: Martin Leung <martin.leung@amd.com>
+Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c    |   10 ----------
+ drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h |    8 --------
+ 2 files changed, 18 deletions(-)
+
+--- a/drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
++++ b/drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
+@@ -86,14 +86,6 @@ static uint8_t is_cp_desired_hdcp2(struc
+                       !hdcp->connection.is_hdcp2_revoked;
+ }
+-static void exit_idle_optimizations(struct mod_hdcp *hdcp)
+-{
+-      struct mod_hdcp_dm *dm = &hdcp->config.dm;
+-
+-      if (dm->funcs.exit_idle_optimizations)
+-              dm->funcs.exit_idle_optimizations(dm->handle);
+-}
+-
+ static enum mod_hdcp_status execution(struct mod_hdcp *hdcp,
+               struct mod_hdcp_event_context *event_ctx,
+               union mod_hdcp_transition_input *input)
+@@ -456,8 +448,6 @@ enum mod_hdcp_status mod_hdcp_process_ev
+       memset(&event_ctx, 0, sizeof(struct mod_hdcp_event_context));
+       event_ctx.event = event;
+-      exit_idle_optimizations(hdcp);
+-
+       /* execute and transition */
+       exec_status = execution(hdcp, &event_ctx, &hdcp->auth.trans_input);
+       trans_status = transition(
+--- a/drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h
++++ b/drivers/gpu/drm/amd/display/modules/inc/mod_hdcp.h
+@@ -143,13 +143,6 @@ struct mod_hdcp_ddc {
+       } funcs;
+ };
+-struct mod_hdcp_dm {
+-      void *handle;
+-      struct {
+-              void (*exit_idle_optimizations)(void *handle);
+-      } funcs;
+-};
+-
+ struct mod_hdcp_psp {
+       void *handle;
+       void *funcs;
+@@ -259,7 +252,6 @@ struct mod_hdcp_display_query {
+ struct mod_hdcp_config {
+       struct mod_hdcp_psp psp;
+       struct mod_hdcp_ddc ddc;
+-      struct mod_hdcp_dm dm;
+       uint8_t index;
+ };
index ba178f0f0e43fc0072b22156e153d67db419ac9d..17872579ab00bb7a7b2a6ac63941817752db8cc8 100644 (file)
@@ -204,6 +204,7 @@ gcov-add-support-for-gcc-14.patch
 kcov-don-t-lose-track-of-remote-references-during-softirqs.patch
 i2c-ocores-set-iack-bit-after-core-is-enabled.patch
 dt-bindings-i2c-google-cros-ec-i2c-tunnel-correct-path-to-i2c-controller-schema.patch
+drm-amd-display-revert-exit-idle-optimizations-before-hdcp-execution.patch
 arm-dts-samsung-smdkv310-fix-keypad-no-autorepeat.patch
 arm-dts-samsung-exynos4412-origen-fix-keypad-no-auto.patch
 arm-dts-samsung-smdk4412-fix-keypad-no-autorepeat.patch