* [PATCH 0/4] DC Patches Aug 11 2025
@ 2025-08-06 2:57 Tom Chung
2025-08-06 2:57 ` [PATCH 1/4] drm/amd/display: Wait until OTG enable state is cleared Tom Chung
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Tom Chung @ 2025-08-06 2:57 UTC (permalink / raw)
To: amd-gfx
Cc: Harry Wentland, Leo Li, Aurabindo Pillai, Roman Li, Wayne Lin,
Tom Chung, Fangzhi Zuo, Daniel Wheeler, Ray Wu, Ivan Lipski,
Alex Hung
This DC patchset brings improvements in multiple areas. In summary, we highlight:
-Fix close and open lid may cause eDP remaining blank
-Fix frequently disabling/enabling OTG may cause incorrect configuration of OTG
Cc: Daniel Wheeler <daniel.wheeler@amd.com>
Danny Wang (1):
drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off
Taimur Hassan (2):
drm/amd/display: [FW Promotion] Release 0.1.22.0
drm/amd/display: Promote DC to 3.2.345
TungYu Lu (1):
drm/amd/display: Wait until OTG enable state is cleared
drivers/gpu/drm/amd/display/dc/core/dc.c | 2 +-
drivers/gpu/drm/amd/display/dc/dc.h | 2 +-
.../amd/display/dc/optc/dcn401/dcn401_optc.c | 5 ++
.../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 69 +++++++++++++++++++
4 files changed, 76 insertions(+), 2 deletions(-)
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/4] drm/amd/display: Wait until OTG enable state is cleared
2025-08-06 2:57 [PATCH 0/4] DC Patches Aug 11 2025 Tom Chung
@ 2025-08-06 2:57 ` Tom Chung
2025-08-06 2:57 ` [PATCH 2/4] drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off Tom Chung
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Tom Chung @ 2025-08-06 2:57 UTC (permalink / raw)
To: amd-gfx
Cc: Harry Wentland, Leo Li, Aurabindo Pillai, Roman Li, Wayne Lin,
Tom Chung, Fangzhi Zuo, Daniel Wheeler, Ray Wu, Ivan Lipski,
Alex Hung, TungYu Lu, Dillon Varone
From: TungYu Lu <tungyu.lu@amd.com>
[Why]
Customer reported an issue that OS starts and stops device multiple times
during driver installation. Frequently disabling and enabling OTG may
prevent OTG from being safely disabled and cause incorrect configuration
upon the next enablement.
[How]
Add a wait until OTG_CURRENT_MASTER_EN_STATE is cleared as a short term
solution.
Reviewed-by: Dillon Varone <dillon.varone@amd.com>
Signed-off-by: TungYu Lu <tungyu.lu@amd.com>
Signed-off-by: Tom Chung <chiahsuan.chung@amd.com>
---
drivers/gpu/drm/amd/display/dc/optc/dcn401/dcn401_optc.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/gpu/drm/amd/display/dc/optc/dcn401/dcn401_optc.c b/drivers/gpu/drm/amd/display/dc/optc/dcn401/dcn401_optc.c
index ff79c38287df..5af13706e601 100644
--- a/drivers/gpu/drm/amd/display/dc/optc/dcn401/dcn401_optc.c
+++ b/drivers/gpu/drm/amd/display/dc/optc/dcn401/dcn401_optc.c
@@ -226,6 +226,11 @@ bool optc401_disable_crtc(struct timing_generator *optc)
REG_UPDATE(CONTROL,
VTG0_ENABLE, 0);
+ // wait until CRTC_CURRENT_MASTER_EN_STATE == 0
+ REG_WAIT(OTG_CONTROL,
+ OTG_CURRENT_MASTER_EN_STATE,
+ 0, 10, 15000);
+
/* CRTC disabled, so disable clock. */
REG_WAIT(OTG_CLOCK_CONTROL,
OTG_BUSY, 0,
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/4] drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off
2025-08-06 2:57 [PATCH 0/4] DC Patches Aug 11 2025 Tom Chung
2025-08-06 2:57 ` [PATCH 1/4] drm/amd/display: Wait until OTG enable state is cleared Tom Chung
@ 2025-08-06 2:57 ` Tom Chung
2025-08-06 2:57 ` [PATCH 3/4] drm/amd/display: [FW Promotion] Release 0.1.22.0 Tom Chung
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Tom Chung @ 2025-08-06 2:57 UTC (permalink / raw)
To: amd-gfx
Cc: Harry Wentland, Leo Li, Aurabindo Pillai, Roman Li, Wayne Lin,
Tom Chung, Fangzhi Zuo, Daniel Wheeler, Ray Wu, Ivan Lipski,
Alex Hung, Danny Wang, Nicholas Kazlauskas
From: Danny Wang <Danny.Wang@amd.com>
[WHY&HOW]
The user closed the lid while the system was powering on and opened it
again before the “apply_seamless_boot_optimization” was set to false,
resulting in the eDP remaining blank.
Reset the “apply_seamless_boot_optimization” to false when dpms off.
Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: Danny Wang <Danny.Wang@amd.com>
Signed-off-by: Tom Chung <chiahsuan.chung@amd.com>
---
drivers/gpu/drm/amd/display/dc/core/dc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index 242bcb30dd34..5bf97d8fb34a 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -3391,7 +3391,7 @@ static void update_seamless_boot_flags(struct dc *dc,
int surface_count,
struct dc_stream_state *stream)
{
- if (get_seamless_boot_stream_count(context) > 0 && surface_count > 0) {
+ if (get_seamless_boot_stream_count(context) > 0 && (surface_count > 0 || stream->dpms_off)) {
/* Optimize seamless boot flag keeps clocks and watermarks high until
* first flip. After first flip, optimization is required to lower
* bandwidth. Important to note that it is expected UEFI will
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 3/4] drm/amd/display: [FW Promotion] Release 0.1.22.0
2025-08-06 2:57 [PATCH 0/4] DC Patches Aug 11 2025 Tom Chung
2025-08-06 2:57 ` [PATCH 1/4] drm/amd/display: Wait until OTG enable state is cleared Tom Chung
2025-08-06 2:57 ` [PATCH 2/4] drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off Tom Chung
@ 2025-08-06 2:57 ` Tom Chung
2025-08-06 2:57 ` [PATCH 4/4] drm/amd/display: Promote DC to 3.2.345 Tom Chung
2025-08-11 13:46 ` [PATCH 0/4] DC Patches Aug 11 2025 Wheeler, Daniel
4 siblings, 0 replies; 6+ messages in thread
From: Tom Chung @ 2025-08-06 2:57 UTC (permalink / raw)
To: amd-gfx
Cc: Harry Wentland, Leo Li, Aurabindo Pillai, Roman Li, Wayne Lin,
Tom Chung, Fangzhi Zuo, Daniel Wheeler, Ray Wu, Ivan Lipski,
Alex Hung, Taimur Hassan
From: Taimur Hassan <Syed.Hassan@amd.com>
Add a new command for Panel Replay.
Acked-by: Wayne Lin <wayne.lin@amd.com>
Signed-off-by: Taimur Hassan <Syed.Hassan@amd.com>
Signed-off-by: Tom Chung <chiahsuan.chung@amd.com>
---
.../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 69 +++++++++++++++++++
1 file changed, 69 insertions(+)
diff --git a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
index 79b5b1bb9b93..52295efdba63 100644
--- a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
+++ b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h
@@ -4019,6 +4019,10 @@ enum dmub_cmd_replay_type {
* Set adaptive sync sdp enabled
*/
DMUB_CMD__REPLAY_DISABLED_ADAPTIVE_SYNC_SDP = 8,
+ /**
+ * Set version
+ */
+ DMUB_CMD__REPLAY_SET_VERSION = 9,
/**
* Set Replay General command.
*/
@@ -4143,6 +4147,63 @@ struct dmub_cmd_replay_copy_settings_data {
uint8_t pad[2];
};
+
+/**
+ * Replay versions.
+ */
+enum replay_version {
+ /**
+ * FreeSync Replay
+ */
+ REPLAY_VERSION_FREESYNC_REPLAY = 0,
+ /**
+ * Panel Replay
+ */
+ REPLAY_VERSION_PANEL_REPLAY = 1,
+ /**
+ * Replay not supported.
+ */
+ REPLAY_VERSION_UNSUPPORTED = 0xFF,
+};
+
+/**
+ * Data passed from driver to FW in a DMUB_CMD___SET_REPLAY_VERSION command.
+ */
+struct dmub_cmd_replay_set_version_data {
+ /**
+ * PSR version that FW should implement.
+ */
+ enum replay_version version;
+ /**
+ * PSR control version.
+ */
+ uint8_t cmd_version;
+ /**
+ * Panel Instance.
+ * Panel instance to identify which psr_state to use
+ * Currently the support is only for 0 or 1
+ */
+ uint8_t panel_inst;
+ /**
+ * Explicit padding to 4 byte boundary.
+ */
+ uint8_t pad[2];
+};
+
+/**
+ * Definition of a DMUB_CMD__REPLAY_SET_VERSION command.
+ */
+struct dmub_rb_cmd_replay_set_version {
+ /**
+ * Command header.
+ */
+ struct dmub_cmd_header header;
+ /**
+ * Data passed from driver to FW in a DMUB_CMD__REPLAY_SET_VERSION command.
+ */
+ struct dmub_cmd_replay_set_version_data replay_set_version_data;
+};
+
/**
* Definition of a DMUB_CMD__REPLAY_COPY_SETTINGS command.
*/
@@ -4506,6 +4567,10 @@ union dmub_replay_cmd_set {
* Definition of DMUB_CMD__REPLAY_DISABLED_ADAPTIVE_SYNC_SDP command data.
*/
struct dmub_cmd_replay_disabled_adaptive_sync_sdp_data disabled_adaptive_sync_sdp_data;
+ /**
+ * Definition of DMUB_CMD__REPLAY_SET_VERSION command data.
+ */
+ struct dmub_cmd_replay_set_version_data version_data;
/**
* Definition of DMUB_CMD__REPLAY_SET_GENERAL_CMD command data.
*/
@@ -6265,6 +6330,10 @@ union dmub_rb_cmd {
* Definition of a DMUB_CMD__IDLE_OPT_SET_DC_POWER_STATE command.
*/
struct dmub_rb_cmd_idle_opt_set_dc_power_state idle_opt_set_dc_power_state;
+ /**
+ * Definition of a DMUB_CMD__REPLAY_SET_VERSION command.
+ */
+ struct dmub_rb_cmd_replay_set_version replay_set_version;
/*
* Definition of a DMUB_CMD__REPLAY_COPY_SETTINGS command.
*/
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 4/4] drm/amd/display: Promote DC to 3.2.345
2025-08-06 2:57 [PATCH 0/4] DC Patches Aug 11 2025 Tom Chung
` (2 preceding siblings ...)
2025-08-06 2:57 ` [PATCH 3/4] drm/amd/display: [FW Promotion] Release 0.1.22.0 Tom Chung
@ 2025-08-06 2:57 ` Tom Chung
2025-08-11 13:46 ` [PATCH 0/4] DC Patches Aug 11 2025 Wheeler, Daniel
4 siblings, 0 replies; 6+ messages in thread
From: Tom Chung @ 2025-08-06 2:57 UTC (permalink / raw)
To: amd-gfx
Cc: Harry Wentland, Leo Li, Aurabindo Pillai, Roman Li, Wayne Lin,
Tom Chung, Fangzhi Zuo, Daniel Wheeler, Ray Wu, Ivan Lipski,
Alex Hung, Taimur Hassan
From: Taimur Hassan <Syed.Hassan@amd.com>
This version brings along following update:
-Fix close and open lid may cause eDP remaining blank
-Fix frequently disabling/enabling OTG may cause incorrect
configuration of OTG
Acked-by: Wayne Lin <wayne.lin@amd.com>
Signed-off-by: Taimur Hassan <Syed.Hassan@amd.com>
Signed-off-by: Tom Chung <chiahsuan.chung@amd.com>
---
drivers/gpu/drm/amd/display/dc/dc.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/display/dc/dc.h b/drivers/gpu/drm/amd/display/dc/dc.h
index 18c68e531f71..1ab05eabbddb 100644
--- a/drivers/gpu/drm/amd/display/dc/dc.h
+++ b/drivers/gpu/drm/amd/display/dc/dc.h
@@ -55,7 +55,7 @@ struct aux_payload;
struct set_config_cmd_payload;
struct dmub_notification;
-#define DC_VER "3.2.344"
+#define DC_VER "3.2.345"
/**
* MAX_SURFACES - representative of the upper bound of surfaces that can be piped to a single CRTC
--
2.43.0
^ permalink raw reply related [flat|nested] 6+ messages in thread
* RE: [PATCH 0/4] DC Patches Aug 11 2025
2025-08-06 2:57 [PATCH 0/4] DC Patches Aug 11 2025 Tom Chung
` (3 preceding siblings ...)
2025-08-06 2:57 ` [PATCH 4/4] drm/amd/display: Promote DC to 3.2.345 Tom Chung
@ 2025-08-11 13:46 ` Wheeler, Daniel
4 siblings, 0 replies; 6+ messages in thread
From: Wheeler, Daniel @ 2025-08-11 13:46 UTC (permalink / raw)
To: Chung, ChiaHsuan (Tom), amd-gfx@lists.freedesktop.org
Cc: Wentland, Harry, Li, Sun peng (Leo), Pillai, Aurabindo, Li, Roman,
Lin, Wayne, Chung, ChiaHsuan (Tom), Zuo, Jerry, Wu, Ray,
LIPSKI, IVAN, Hung, Alex
[Public]
Hi all,
This week this patchset was tested on 4 systems, two dGPU and two APU based, and tested across multiple display and connection types.
APU
• Single Display eDP -> 1080p 60hz, 1920x1200 165hz
• Single Display DP (SST DSC) -> 4k144hz, 4k240hz
• Multi display -> eDP + DP/HDMI/USB-C -> 1080p 60hz eDP + 4k 144hz, 4k 240hz (Includes USB-C to DP/HDMI adapters)
• Thunderbolt -> LG Ultrafine 5k
• MST DSC -> Cable Matters 101075 (DP to 3x DP) with 3x 4k60hz displays, HP Hook G2 with 2x 4k60hz displays
• USB 4 -> HP Hook G4, Lenovo Thunderbolt Dock, both with 2x 4k60hz DP and 1x 4k60hz HDMI displays
• SST PCON -> Club3D CAC-1085 + 1x 4k 144hz, FRL3, at a max resolution supported by the dongle of 4k 120hz YUV420 12bpc.
• MST PCON -> 1x 4k 144hz, FRL3, at a max resolution supported by the adapter of 4k 120hz RGB 8bpc.
DGPU
• Single Display DP (SST DSC) -> 4k144hz, 4k240hz
• Multiple Display DP -> 4k240hz + 4k144hz
• MST (Startech MST14DP123DP [DP to 3x DP] and 2x 4k 60hz displays)
• MST DSC (with Cable Matters 101075 [DP to 3x DP] with 3x 4k60hz displays)
The testing is a mix of automated and manual tests. Manual testing includes (but is not limited to)
• Changing display configurations and settings
• Video/Audio playback
• Benchmark testing
• Suspend/Resume testing
• Feature testing (Freesync, HDCP, etc.)
Automated testing includes (but is not limited to)
• Script testing (scripts to automate some of the manual checks)
• IGT testing
The testing is mainly tested on the following displays, but occasionally there are tests with other displays
• Samsung G8 Neo 4k240hz
• Samsung QN55QN95B 4k 120hz
• Acer XV322QKKV 4k144hz
• HP U27 4k Wireless 4k60hz
• LG 27UD58B 4k60hz
• LG 32UN650WA 4k60hz
• LG Ultrafine 5k 5k60hz
• AU Optronics B140HAN01.1 1080p 60hz eDP
• AU Optronics B160UAN01.J 1920x1200 165hz eDP
The patchset consists of the amd-staging-drm-next branch (Head commit -> f07b314c2a3f70a487086150ef794c22d86b5a8b-> drm/amdgpu: Add wrapper function for dpc state) with new patches added on top of it.
Tested on Ubuntu 24.04.3, on Wayland and X11, using KDE Plasma and Gnome.
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Thank you,
Dan Wheeler
Sr. Technologist | AMD
SW Display
------------------------------------------------------------------------------------------------------------------
1 Commerce Valley Dr E, Thornhill, ON L3T 7X6
amd.com
-----Original Message-----
From: Tom Chung <chiahsuan.chung@amd.com>
Sent: Tuesday, August 5, 2025 10:57 PM
To: amd-gfx@lists.freedesktop.org
Cc: Wentland, Harry <Harry.Wentland@amd.com>; Li, Sun peng (Leo) <Sunpeng.Li@amd.com>; Pillai, Aurabindo <Aurabindo.Pillai@amd.com>; Li, Roman <Roman.Li@amd.com>; Lin, Wayne <Wayne.Lin@amd.com>; Chung, ChiaHsuan (Tom) <ChiaHsuan.Chung@amd.com>; Zuo, Jerry <Jerry.Zuo@amd.com>; Wheeler, Daniel <Daniel.Wheeler@amd.com>; Wu, Ray <Ray.Wu@amd.com>; LIPSKI, IVAN <IVAN.LIPSKI@amd.com>; Hung, Alex <Alex.Hung@amd.com>
Subject: [PATCH 0/4] DC Patches Aug 11 2025
This DC patchset brings improvements in multiple areas. In summary, we highlight:
-Fix close and open lid may cause eDP remaining blank -Fix frequently disabling/enabling OTG may cause incorrect configuration of OTG
Cc: Daniel Wheeler <daniel.wheeler@amd.com>
Danny Wang (1):
drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off
Taimur Hassan (2):
drm/amd/display: [FW Promotion] Release 0.1.22.0
drm/amd/display: Promote DC to 3.2.345
TungYu Lu (1):
drm/amd/display: Wait until OTG enable state is cleared
drivers/gpu/drm/amd/display/dc/core/dc.c | 2 +-
drivers/gpu/drm/amd/display/dc/dc.h | 2 +-
.../amd/display/dc/optc/dcn401/dcn401_optc.c | 5 ++
.../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 69 +++++++++++++++++++
4 files changed, 76 insertions(+), 2 deletions(-)
--
2.43.0
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2025-08-11 13:46 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-06 2:57 [PATCH 0/4] DC Patches Aug 11 2025 Tom Chung
2025-08-06 2:57 ` [PATCH 1/4] drm/amd/display: Wait until OTG enable state is cleared Tom Chung
2025-08-06 2:57 ` [PATCH 2/4] drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off Tom Chung
2025-08-06 2:57 ` [PATCH 3/4] drm/amd/display: [FW Promotion] Release 0.1.22.0 Tom Chung
2025-08-06 2:57 ` [PATCH 4/4] drm/amd/display: Promote DC to 3.2.345 Tom Chung
2025-08-11 13:46 ` [PATCH 0/4] DC Patches Aug 11 2025 Wheeler, Daniel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).