]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/amd/display: Split update_planes_and_stream_v3 into parts (V2)
authorDominik Kaszewski <dominik.kaszewski@amd.com>
Fri, 31 Oct 2025 12:01:35 +0000 (13:01 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 16 Dec 2025 18:26:09 +0000 (13:26 -0500)
commitd38ec099aa6fb792e0a2064226074e57b17792a3
treea1177e26b059c870a2a08cb6739c88ada2b30890
parentcb7a978c7c425e2666d6397f1297b3e8fe4f0a5d
drm/amd/display: Split update_planes_and_stream_v3 into parts (V2)

[Why]
Currently all of the preparation and execution of plane update is done
under a DC lock, blocking other code from accessing DC for longer than
strictly necessary.

[How]
Break the v3 update flow into 3 parts:
    * prepare - locked, calculate update flow and modify DC state
    * execute - unlocked, program hardware
    * cleanup - locked, finalize DC state and free temp resources
Legacy v2 flow too compilicated to break down for now, link new API
with old by executing everything in slightly misnamed prepare stage.

V2:
Keep the new code structure, but point all users back at the old code,
until fully tested.

Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: Dominik Kaszewski <dominik.kaszewski@amd.com>
Signed-off-by: Roman Li <roman.li@amd.com>
Signed-off-by: Chenyu Chen <chen-yu.chen@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c
drivers/gpu/drm/amd/display/dc/core/dc_stream.c
drivers/gpu/drm/amd/display/dc/dc_stream.h