]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
drm/amd/display: Optimize cursor position updates
authorAric Cyr <Aric.Cyr@amd.com>
Tue, 10 Dec 2024 23:38:15 +0000 (18:38 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 Feb 2025 09:05:07 +0000 (10:05 +0100)
commit3ec8e3dab60c3e556bf542f9cda40d9d54b12c7b
tree8ead722a1028fcfc1f0b0fb9161168fefe64e8d1
parentb4b902737746c490258de5cb55cab39e79927a67
drm/amd/display: Optimize cursor position updates

commit 024771f3fb75dc817e9429d5763f1a6eb84b6f21 upstream.

[why]
Updating the cursor enablement register can be a slow operation and accumulates
when high polling rate cursors cause frequent updates asynchronously to the
cursor position.

[how]
Since the cursor enable bit is cached there is no need to update the
enablement register if there is no change to it.  This removes the
read-modify-write from the cursor position programming path in HUBP and
DPP, leaving only the register writes.

Cc: Mario Limonciello <mario.limonciello@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
Reviewed-by: Sung Lee <sung.lee@amd.com>
Signed-off-by: Aric Cyr <Aric.Cyr@amd.com>
Signed-off-by: Wayne Lin <wayne.lin@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/dc/dpp/dcn10/dcn10_dpp.c
drivers/gpu/drm/amd/display/dc/dpp/dcn401/dcn401_dpp_cm.c
drivers/gpu/drm/amd/display/dc/hubp/dcn20/dcn20_hubp.c
drivers/gpu/drm/amd/display/dc/hubp/dcn401/dcn401_hubp.c