[PATCH v3 00/16] Introduce DML version 2
Rodrigo Siqueira
Rodrigo.Siqueira at amd.com
Wed Oct 4 21:20:54 UTC 2023
This patchset introduces a new version of DML that will be used for some
already available ASIC based on DCN3x and future devices. This new
version of the DML is more reliable, provide a better programming model
for hardware/software, and is more flexible for creating new tools for
automation/validation (e.g., unit test). This first version is a
transition step for new ASICs, meaning that we will keep improving this
new component. Finally, it is important to highlight that a large part
of the DML code is generated.
This patchset starts with a code refactor in the DML to improve the code
isolation and avoid compilation issues when using some 32-bit
architecture such as ARM and PPC. Next, it is introduced the basic code
for DML2. Finally, the end of this patchset enables DML2 for some
specific ASICs followed by patches that improve DML when used with
specific devices.
Thanks
Siqueira
Charlene Liu (2):
drm/amd/display: Add z8_marks in dml
drm/amd/display: correct dml2 input and dlg_refclk
Daniel Miess (1):
drm/amd/display: Port replay vblank logic to DML2
Gabe Teeger (1):
drm/amd/display: add check in validate_only in dml2
Qingqing Zhuo (2):
drm/amd/display: Introduce DML2
drm/amd/display: Add DCN35 DML2 support
Rodrigo Siqueira (4):
drm/amd/display: Move dce_calcs from DML folder
drm/amd/display: Move custom_float outside DML
drm/amd/display: Move bw_fixed outside DML folder
drm/amd/display: Move dml code under CONFIG_DRM_AMD_DC_FP guard
Saaem Rizvi (1):
drm/amd/display: Modify Pipe Selection for Policy for ODM
Sung Joon Kim (3):
drm/amd/display: Handle multiple streams sourcing same surface
drm/amd/display: Use fixed DET Buffer Size
drm/amd/display: Fix Chroma Surface height/width initialization
Taimur Hassan (2):
drm/amd/display: Split pipe for stereo timings
drm/amd/display: Move stereo timing check to helper
drivers/gpu/drm/amd/display/dc/Makefile | 6 +-
.../gpu/drm/amd/display/dc/basics/Makefile | 9 +-
.../dc/{dml/calcs => basics}/bw_fixed.c | 13 +-
.../dc/{dml/calcs => basics}/calcs_logger.h | 0
.../dc/{dml/calcs => basics}/custom_float.c | 90 +-
.../dc/{dml/calcs => basics}/dce_calcs.c | 0
drivers/gpu/drm/amd/display/dc/core/dc.c | 39 +
.../gpu/drm/amd/display/dc/core/dc_resource.c | 20 +
drivers/gpu/drm/amd/display/dc/dc.h | 5 +
.../drm/amd/display/dc/dcn32/dcn32_resource.c | 61 +-
.../amd/display/dc/dcn321/dcn321_resource.c | 41 +
.../drm/amd/display/dc/dcn35/dcn35_resource.c | 24 +-
drivers/gpu/drm/amd/display/dc/dml/Makefile | 2 -
.../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 80 +
.../amd/display/dc/dml/dcn321/dcn321_fpu.c | 81 +
drivers/gpu/drm/amd/display/dc/dml2/Makefile | 91 +
.../gpu/drm/amd/display/dc/dml2/cmntypes.h | 92 +
.../amd/display/dc/dml2/display_mode_core.c | 10296 ++++++++++++++++
.../amd/display/dc/dml2/display_mode_core.h | 201 +
.../dc/dml2/display_mode_core_structs.h | 1970 +++
.../dc/dml2/display_mode_lib_defines.h | 75 +
.../amd/display/dc/dml2/display_mode_util.c | 796 ++
.../amd/display/dc/dml2/display_mode_util.h | 74 +
.../display/dc/dml2/dml2_dc_resource_mgmt.c | 861 ++
.../display/dc/dml2/dml2_dc_resource_mgmt.h | 48 +
.../drm/amd/display/dc/dml2/dml2_dc_types.h | 40 +
.../amd/display/dc/dml2/dml2_internal_types.h | 121 +
.../amd/display/dc/dml2/dml2_mall_phantom.c | 913 ++
.../amd/display/dc/dml2/dml2_mall_phantom.h | 50 +
.../gpu/drm/amd/display/dc/dml2/dml2_policy.c | 308 +
.../gpu/drm/amd/display/dc/dml2/dml2_policy.h | 47 +
.../display/dc/dml2/dml2_translation_helper.c | 1201 ++
.../display/dc/dml2/dml2_translation_helper.h | 39 +
.../gpu/drm/amd/display/dc/dml2/dml2_utils.c | 480 +
.../gpu/drm/amd/display/dc/dml2/dml2_utils.h | 144 +
.../drm/amd/display/dc/dml2/dml2_wrapper.c | 745 ++
.../drm/amd/display/dc/dml2/dml2_wrapper.h | 212 +
.../gpu/drm/amd/display/dc/dml2/dml_assert.h | 30 +
.../drm/amd/display/dc/dml2/dml_depedencies.h | 31 +
.../display/dc/dml2/dml_display_rq_dlg_calc.c | 585 +
.../display/dc/dml2/dml_display_rq_dlg_calc.h | 63 +
.../gpu/drm/amd/display/dc/dml2/dml_logging.h | 29 +
.../gpu/drm/amd/display/dc/inc/core_types.h | 1 +
43 files changed, 19931 insertions(+), 83 deletions(-)
rename drivers/gpu/drm/amd/display/dc/{dml/calcs => basics}/bw_fixed.c (94%)
rename drivers/gpu/drm/amd/display/dc/{dml/calcs => basics}/calcs_logger.h (100%)
rename drivers/gpu/drm/amd/display/dc/{dml/calcs => basics}/custom_float.c (66%)
rename drivers/gpu/drm/amd/display/dc/{dml/calcs => basics}/dce_calcs.c (100%)
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/Makefile
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/cmntypes.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/display_mode_core.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/display_mode_core.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/display_mode_core_structs.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/display_mode_lib_defines.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/display_mode_util.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/display_mode_util.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_dc_resource_mgmt.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_dc_resource_mgmt.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_dc_types.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_internal_types.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_mall_phantom.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_mall_phantom.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_policy.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_policy.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_translation_helper.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_translation_helper.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_utils.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_utils.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml_assert.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml_depedencies.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml_display_rq_dlg_calc.c
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml_display_rq_dlg_calc.h
create mode 100644 drivers/gpu/drm/amd/display/dc/dml2/dml_logging.h
--
2.40.1
More information about the amd-gfx
mailing list