]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amd/display: Reset apply_eamless_boot_optimization when dpms_off
authorDanny Wang <Danny.Wang@amd.com>
Thu, 24 Jul 2025 05:58:21 +0000 (13:58 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Nov 2025 20:36:58 +0000 (15:36 -0500)
[ Upstream commit ad335b5fc9ed1cdeb33fbe97d2969b3a2eedaf3e ]

[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>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/amd/display/dc/core/dc.c

index bc364792d9d31c822ec9a77983cb5fc418b30878..2d2f4c4bdc97ee15201e3dca5d51cc4482d3bf1b 100644 (file)
@@ -3404,7 +3404,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