]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/amd/display: Add fast sync field in ultra sleep more for DMUB
authorAllen Li <wei-guang.li@amd.com>
Fri, 5 Sep 2025 08:58:38 +0000 (16:58 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 23 Sep 2025 14:31:35 +0000 (10:31 -0400)
[Why&How]
We need to inform DMUB whether fast sync in ultra sleep mode is supported,
so that it can disable desync error detection when the it is not enabled.
This helps prevent unexpected desync errors when transitioning out of
ultra sleep mode.

Add fast sync in ultra sleep mode field in replay copy setting command.

Reviewed-by: Robin Chen <robin.chen@amd.com>
Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: Allen Li <wei-guang.li@amd.com>
Signed-off-by: Ivan Lipski <ivan.lipski@amd.com>
Tested-by: Dan Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dce/dmub_replay.c
drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h

index 9e2a473a88521d6ba0051aba46b45e7d8fb74c46..f9542edff14bb018bc6968459c4e407c890f667c 100644 (file)
@@ -169,6 +169,7 @@ static bool dmub_replay_copy_settings(struct dmub_replay *dmub,
        copy_settings_data->max_deviation_line                  = link->dpcd_caps.pr_info.max_deviation_line;
        copy_settings_data->smu_optimizations_en                = link->replay_settings.replay_smu_opt_enable;
        copy_settings_data->replay_timing_sync_supported = link->replay_settings.config.replay_timing_sync_supported;
+       copy_settings_data->replay_support_fast_resync_in_ultra_sleep_mode = link->replay_settings.config.replay_support_fast_resync_in_ultra_sleep_mode;
 
        copy_settings_data->debug.bitfields.enable_ips_visual_confirm = dc->dc->debug.enable_ips_visual_confirm;
 
index e65747f7f12f31335748c1cd07b13bcdf7fa1504..6db19e49a05ce771c99b2b8e8a2400520c85652f 100644 (file)
@@ -4142,10 +4142,14 @@ struct dmub_cmd_replay_copy_settings_data {
         * @hpo_link_enc_inst: HPO link encoder instance
         */
        uint8_t hpo_link_enc_inst;
+       /**
+        * Determines if fast sync in ultra sleep mode is enabled/disabled.
+        */
+       uint8_t replay_support_fast_resync_in_ultra_sleep_mode;
        /**
         * @pad: Align structure to 4 byte boundary.
         */
-       uint8_t pad[2];
+       uint8_t pad[1];
 };