From: Ivan Lipski <[email protected]>
This DC patchset brings improvements in multiple areas. In summary, we
highlight:
- Fix HPO test regressions.
- Refactor DPP_SET_INPUT_TRANSFER_FUNC to drop pipe_ctx params.
- Use fast update path for address-only plane flips.
- Split OPTC_PIPE_CONTROL_LOCK into smaller helpers.
- Fix DPREFCLK override when SMU isn't available.
- Fix CalculateFlipSchedule calculation.
- Add hook to disable alt-ch in PMO.
- Update alt-ch size calculations.
- Enable min dispclk ODM on DCN42.
- Remove RMCM tetrahedral cube from dc_plane_state.
- Fix mismatch number of OPP/DPP accounting.
- Adjust vblank_nom policy for HW SDP throttling.
- Add passthrough visual confirm.
- Expand amdgpu_dm KUnit test coverage across cursor, MST, EDID, HDMI,
IRQ, i2c, framebuffer, tiling/modifier and HPD paths.
- Various fixes for Kunit tests related to HDMI FRL, IRQ and cursors.
Cc: Dan Wheeler <[email protected]>
Alex Hung (38):
drm/amd/display: Test writeback connector
drm/amd/display: Test GPU memory allocation
drm/amd/display: Test EDID quirks and ACPI EDID read
drm/amd/display: Test execute_synaptics_rc_command failures
drm/amd/display: Test MST stream feature read failure
drm/amd/display: Test dm_helpers_submit_i2c_over_aux
drm/amd/display: Test GPU memory allocate and free helpers
drm/amd/display: Test dm_helpers_dmub_set_config_sync
drm/amd/display: Test dm_helpers_is_dp_sink_present
drm/amd/display: Test dm_helpers_read_local_edid
drm/amd/display: Test dp_handle_test_pattern_request patterns
drm/amd/display: Test DMUB reg callbacks
drm/amd/display: Test VBIOS bounding box
drm/amd/display: Test dm_init_microcode
drm/amd/display: Test dm_dmub_sw_init
drm/amd/display: Test MST sideband message ack path
drm/amd/display: Test dm_dp_mst_get_modes without a remote EDID
drm/amd/display: Test dm_dp_mst_get_modes with a remote EDID
drm/amd/display: Test dm_dp_mst_detect DPCD probe and unplug
drm/amd/display: Test MST connector register and unregister
drm/amd/display: Test dm_dp_mst_connector_destroy
drm/amd/display: Test plane state duplicate and destroy
drm/amd/display: Test modifier list de-duplication
drm/amd/display: Test GFX6-8 tiling info from modifiers
drm/amd/display: Test GFX6-8 tile mode and tile split lookups
drm/amd/display: Test GFX6-8 modifier calculation
drm/amd/display: Test GFX6-8 modifier list generation
drm/amd/display: Test framebuffer prepare and cleanup
drm/amd/display: Test cursor update and async plane update
drm/amd/display: Refactor amdgpu_dm_irq_test
drm/amd/display: Test pageflip completion in the high IRQ handlers
drm/amd/display: Test writeback handling in dm_crtc_high_irq
drm/amd/display: Test schedule_dc_vmin_vmax
drm/amd/display: Test handle_hpd_irq_helper detect and debounce exits
drm/amd/display: Test HPD RX, HPD init and DMUB callback branches
drm/amd/display: Test dm_dmub_outbox1_low_irq drain and work guards
drm/amd/display: Test amdgpu_dm_dce110_register_irq_handlers
drm/amd/display: Test amdgpu_dm_dcn10_register_irq_handlers
Alvin Lee (3):
drm/amd/display: Disable alt-ch until dependencies are ready
drm/amd/display: Add hook to disable alt-ch in PMO
drm/amd/display: Update alt-ch size calculations
Austin Zheng (1):
drm/amd/display: Fix CalculateFlipSchedule Calculation
Bhawanpreet Lakha (24):
drm/amd/display: Cover MST path in encoder atomic_check
drm/amd/display: Cover amdgpu_dm_encoder_init
drm/amd/display: Cover MST-start failure in detect_mst
drm/amd/display: Cover amdgpu_dm_update_connector_after_detect
drm/amd/display: Cover HDMI infoframe/freesync timing paths
drm/amd/display: Add amdgpu_dm_connector_poll KUnit tests
drm/amd/display: Cover hide_secondary_tile_from_userspace
drm/amd/display: Cover dm_validate_stream_and_context
drm/amd/display: Cover amdgpu_dm_create_validate_stream_for_sink
drm/amd/display: Cover amdgpu_dm_connector_mode_valid
drm/amd/display: Cover mode_valid EDID mgmt path
drm/amd/display: Cover amdgpu_dm_fill_hdr_info_packet
drm/amd/display: Cover amdgpu_dm_connector_atomic_check
drm/amd/display: Cover atomic_check modeset triggers
drm/amd/display: Cover funcs_force valid EDID path
drm/amd/display: Cover amdgpu_dm_connector_get_modes
drm/amd/display: Cover create_eml_sink valid EDID path
drm/amd/display: Cover amdgpu_set_panel_orientation
drm/amd/display: Cover amdgpu_dm_prune_primary_tile_modes
drm/amd/display: Cover add_fs_modes mode generation
drm/amd/display: Cover add_fs_modes illegal timing skip
drm/amd/display: Cover hdmi_frl_status_polling_work
drm/amd/display: Cover amdgpu_dm_i2c_xfer
drm/amd/display: Cover amdgpu_dm_create_i2c
Dillon Varone (2):
drm/amd/display: Fix mismatch number of OPP/DPP accounting
drm/amd/display: Populate vblank_nom according to bounding box
Gabe Teeger (1):
drm/amd/display: Enable min dispclk ODM on DCN42
Gaghik Khachatrian (1):
drm/amd/display: Add passthrough visual confirm
Ilya Bakoulin (1):
drm/amd/display: Clear HUBPREQ_DEBUG_DB on DCN6
Ivan Lipski (2):
drm/amd/display: Refactor hdmi_frl_status_polling_work for Kunit
testing
drm/amd/display: Guard amdgpu_dm_irq_schedule_work against NULL irq_wq
James Lin (2):
drm/amd/display: Fall back to overlay cursor on dcn4x when top plane
doesn't fill CRTC
drm/amd/display: Use fast update path for address-only plane flips
Meera Patel (1):
drm/amd/display: Fix DPREFCLK override when SMU isn't present or ready
for DCN315
Nicholas Kazlauskas (1):
drm/amd/display: Adjust vblank_nom policy for HW SDP tranmission reqs
Rafal Ostrowski (1):
drm/amd/display: Remove RMCM tetrahedral cube from dc_plane_state
Sridevi Arvindekar (1):
drm/amd/display: Fixes for HPO test regressions
Taimur Hassan (1):
drm/amd/display: Promote DC to 3.2.395
Tomasz Siemek (2):
drm/amd/display: Refactor DPP_SET_INPUT_TRANSFER_FUNC to drop pipe_ctx
drm/amd/display: Split OPTC_PIPE_CONTROL_LOCK into smaller HWSS blocks
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 +-
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h | 10 +
.../display/amdgpu_dm/amdgpu_dm_connector.c | 18 +-
.../display/amdgpu_dm/amdgpu_dm_connector.h | 7 +
.../amd/display/amdgpu_dm/amdgpu_dm_cursor.c | 28 +-
.../amd/display/amdgpu_dm/amdgpu_dm_dmub.c | 47 +-
.../amd/display/amdgpu_dm/amdgpu_dm_dmub.h | 15 +
.../amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 6 +
.../drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c | 3 +
.../display/amdgpu_dm/amdgpu_dm_mst_types.c | 12 +-
.../display/amdgpu_dm/amdgpu_dm_mst_types.h | 4 +
.../amd/display/amdgpu_dm/amdgpu_dm_plane.c | 48 +-
.../amd/display/amdgpu_dm/amdgpu_dm_plane.h | 12 +
.../display/amdgpu_dm/amdgpu_dm_services.c | 35 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_wb.c | 72 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_wb.h | 16 +
.../tests/amdgpu_dm_connector_test.c | 3387 ++++++++++++++++-
.../amdgpu_dm/tests/amdgpu_dm_cursor_test.c | 32 +-
.../amdgpu_dm/tests/amdgpu_dm_dmub_test.c | 578 ++-
.../amdgpu_dm/tests/amdgpu_dm_helpers_test.c | 862 ++++-
.../amdgpu_dm/tests/amdgpu_dm_irq_test.c | 1117 +++++-
.../tests/amdgpu_dm_mst_types_test.c | 741 ++++
.../amdgpu_dm/tests/amdgpu_dm_plane_test.c | 703 +++-
.../amdgpu_dm/tests/amdgpu_dm_services_test.c | 228 +-
.../amdgpu_dm/tests/amdgpu_dm_wb_test.c | 330 ++
.../dc/clk_mgr/dcn315/dcn315_clk_mgr.c | 4 +-
drivers/gpu/drm/amd/display/dc/core/dc.c | 16 +-
.../drm/amd/display/dc/core/dc_hw_sequencer.c | 193 +-
.../gpu/drm/amd/display/dc/core/dc_resource.c | 7 +
drivers/gpu/drm/amd/display/dc/dc.h | 3 +-
drivers/gpu/drm/amd/display/dc/dc_hw_types.h | 18 +-
drivers/gpu/drm/amd/display/dc/dce/dce_aux.c | 12 +-
.../dml2_0/dml21/dml21_translation_helper.c | 30 +-
.../amd/display/dc/dml2_0/dml21/dml21_utils.c | 15 +-
.../dml21/inc/bounding_boxes/dcn42b_soc_bb.h | 10 +-
.../src/dml2_core/dml2_core_dcn4_calcs.c | 34 +-
.../dml2_core_dcn5_funcs_initialize.c | 2 +-
.../dml2_core_dcn5_funcs_mode_support.c | 23 +-
.../dml2_core/dml2_core_dcn6_calcs_dchub.c | 47 +-
.../dml2_core_dcn6_funcs_initialize.c | 2 +
.../dml2_core_dcn6_funcs_mode_support.c | 27 +-
.../src/dml2_core/dml2_core_shared_types.h | 2 +
drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c | 7 +-
.../amd/display/dc/hubp/dcn60/dcn60_hubp.c | 3 +
.../drm/amd/display/dc/hwss/dce/dce_hwseq.c | 46 +-
.../drm/amd/display/dc/hwss/dce/dce_hwseq.h | 12 +-
.../amd/display/dc/hwss/dce110/dce110_hwseq.c | 16 +-
.../amd/display/dc/hwss/dce60/dce60_hwseq.c | 8 +-
.../amd/display/dc/hwss/dce80/dce80_hwseq.c | 3 +-
.../amd/display/dc/hwss/dcn10/dcn10_hwseq.c | 66 +-
.../amd/display/dc/hwss/dcn10/dcn10_hwseq.h | 8 +-
.../amd/display/dc/hwss/dcn10/dcn10_init.c | 4 +-
.../amd/display/dc/hwss/dcn20/dcn20_hwseq.c | 216 +-
.../amd/display/dc/hwss/dcn20/dcn20_hwseq.h | 21 +-
.../amd/display/dc/hwss/dcn20/dcn20_init.c | 3 +-
.../amd/display/dc/hwss/dcn201/dcn201_hwseq.c | 34 +-
.../amd/display/dc/hwss/dcn201/dcn201_hwseq.h | 5 +-
.../amd/display/dc/hwss/dcn201/dcn201_init.c | 4 +-
.../amd/display/dc/hwss/dcn21/dcn21_init.c | 3 +-
.../amd/display/dc/hwss/dcn30/dcn30_hwseq.c | 51 +-
.../amd/display/dc/hwss/dcn30/dcn30_hwseq.h | 8 +-
.../amd/display/dc/hwss/dcn30/dcn30_init.c | 3 +-
.../amd/display/dc/hwss/dcn301/dcn301_init.c | 3 +-
.../amd/display/dc/hwss/dcn31/dcn31_init.c | 3 +-
.../amd/display/dc/hwss/dcn314/dcn314_init.c | 3 +-
.../amd/display/dc/hwss/dcn32/dcn32_hwseq.c | 64 +-
.../amd/display/dc/hwss/dcn32/dcn32_hwseq.h | 10 +-
.../amd/display/dc/hwss/dcn32/dcn32_init.c | 3 +-
.../amd/display/dc/hwss/dcn35/dcn35_init.c | 3 +-
.../amd/display/dc/hwss/dcn351/dcn351_init.c | 3 +-
.../amd/display/dc/hwss/dcn401/dcn401_hwseq.c | 174 +-
.../amd/display/dc/hwss/dcn401/dcn401_hwseq.h | 9 +-
.../amd/display/dc/hwss/dcn401/dcn401_init.c | 3 +-
.../amd/display/dc/hwss/dcn42/dcn42_hwseq.c | 49 +-
.../amd/display/dc/hwss/dcn42/dcn42_hwseq.h | 12 +-
.../amd/display/dc/hwss/dcn42/dcn42_init.c | 3 +-
.../amd/display/dc/hwss/dcn60/dcn60_init.c | 3 +-
.../drm/amd/display/dc/hwss/hw_sequencer.h | 55 +-
.../display/dc/hwss/hw_sequencer_private.h | 21 +-
.../gpu/drm/amd/display/dc/inc/hw/hw_shared.h | 10 -
.../display/dc/link/hwss/link_hwss_hpo_dp.c | 23 +-
.../dc/link/protocols/link_dp_capability.c | 3 +-
.../dc/resource/dcn42/dcn42_resource.c | 4 +-
.../dc/resource/dcn42b/dcn42b_resource.c | 4 +-
.../dc/resource/dcn60/dcn60_resource.c | 2 +
85 files changed, 8768 insertions(+), 986 deletions(-)
--
2.43.0