Add support for DCN (Display Core Next) 3.5. The new register headers were too big for the mailing list. Aaron Liu (1): drm/amdgpu/discovery: enable DCN 3.5.0 support Qingqing Zhuo (34): drm/amd/display: Introduce DML2 drm/amd/display: Add dcn35 register header files drm/amd/display: Add DCN35 family information drm/amd/display: Update DCE for DCN35 support drm/amd/display: Update DCN10 for DCN35 support drm/amd/display: Update DCN20 for DCN35 support drm/amd/display: Update DCN30 for DCN35 support drm/amd/display: Update DCN31 for DCN35 support drm/amd/display: Update DCN314 for DCN35 support drm/amd/display: Update DCN32 for DCN35 support drm/amd/display: Update dc.h for DCN35 support drm/amd/display: Add DCN35 BIOS command table support drm/amd/display: Add DCN35 GPIO drm/amd/display: Add DCN35 DCCG drm/amd/display: Add DCN35 DIO drm/amd/display: Add DCN35 PG_CNTL drm/amd/display: Add DCN35 OPTC drm/amd/display: Add DCN35 OPP drm/amd/display: Add DCN35 DPP drm/amd/display: Add DCN35 DWB drm/amd/display: Add DCN35 HUBP drm/amd/display: Add DCN35 HUBBUB drm/amd/display: Add DCN35 MMHUBBUB drm/amd/display: Add DCN35 DSC drm/amd/display: Add DCN35 HWSEQ drm/amd/display: Add DCN35 CLK_MGR drm/amd/display: Add DCN35 IRQ drm/amd/display: Add DCN35 DMUB drm/amd/display: Add DCN35 init drm/amd/display: Add DCN35 Resource drm/amd/display: Add DCN35 DML drm/amd/display: Add DCN35 blocks to Makefile drm/amd/display: Add DCN35 CORE drm/amd/display: Add DCN35 DM Support drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 1 + .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 32 + .../amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 1 + .../amd/display/amdgpu_dm/amdgpu_dm_plane.c | 1 + drivers/gpu/drm/amd/display/dc/Makefile | 2 + .../display/dc/bios/command_table_helper2.c | 1 + .../gpu/drm/amd/display/dc/clk_mgr/Makefile | 8 + .../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 5 + .../display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c | 1001 + .../display/dc/clk_mgr/dcn35/dcn35_clk_mgr.h | 63 + .../amd/display/dc/clk_mgr/dcn35/dcn35_smu.c | 453 + .../amd/display/dc/clk_mgr/dcn35/dcn35_smu.h | 180 + drivers/gpu/drm/amd/display/dc/core/dc.c | 29 + .../gpu/drm/amd/display/dc/core/dc_resource.c | 23 + drivers/gpu/drm/amd/display/dc/dc.h | 63 + drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 64 +- drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h | 3 + drivers/gpu/drm/amd/display/dc/dc_helper.c | 4 + drivers/gpu/drm/amd/display/dc/dc_types.h | 1 + drivers/gpu/drm/amd/display/dc/dce/dce_abm.h | 9 +- .../gpu/drm/amd/display/dc/dce/dce_hwseq.h | 20 + .../gpu/drm/amd/display/dc/dce/dce_i2c_hw.c | 4 + .../gpu/drm/amd/display/dc/dce/dce_i2c_hw.h | 6 + .../drm/amd/display/dc/dcn10/dcn10_hubbub.h | 5 + .../amd/display/dc/dcn10/dcn10_link_encoder.h | 33 + .../gpu/drm/amd/display/dc/dcn10/dcn10_optc.h | 30 + .../display/dc/dcn10/dcn10_stream_encoder.h | 19 +- .../gpu/drm/amd/display/dc/dcn20/dcn20_dccg.h | 64 + .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 8 +- .../drm/amd/display/dc/dcn20/dcn20_hwseq.h | 5 + .../gpu/drm/amd/display/dc/dcn30/dcn30_dpp.h | 2 - .../gpu/drm/amd/display/dc/dcn30/dcn30_dwb.h | 2 - .../gpu/drm/amd/display/dc/dcn30/dcn30_mpc.h | 1 - .../dc/dcn31/dcn31_hpo_dp_link_encoder.h | 10 +- .../gpu/drm/amd/display/dc/dcn31/dcn31_hubp.c | 6 + .../gpu/drm/amd/display/dc/dcn31/dcn31_hubp.h | 3 + .../drm/amd/display/dc/dcn314/dcn314_dccg.c | 2 +- .../drm/amd/display/dc/dcn314/dcn314_dccg.h | 6 + .../dc/dcn314/dcn314_dio_stream_encoder.c | 22 +- .../dc/dcn314/dcn314_dio_stream_encoder.h | 40 + .../drm/amd/display/dc/dcn32/dcn32_mmhubbub.h | 4 - .../gpu/drm/amd/display/dc/dcn32/dcn32_mpc.h | 2 - .../drm/amd/display/dc/dcn32/dcn32_resource.c | 61 +- .../drm/amd/display/dc/dcn32/dcn32_resource.h | 2 - drivers/gpu/drm/amd/display/dc/dcn35/Makefile | 20 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dccg.c | 737 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dccg.h | 190 + .../display/dc/dcn35/dcn35_dio_link_encoder.c | 267 + .../display/dc/dcn35/dcn35_dio_link_encoder.h | 137 + .../dc/dcn35/dcn35_dio_stream_encoder.c | 528 + .../dc/dcn35/dcn35_dio_stream_encoder.h | 326 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dpp.c | 51 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dpp.h | 55 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dsc.c | 58 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dsc.h | 57 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dwb.c | 58 + .../gpu/drm/amd/display/dc/dcn35/dcn35_dwb.h | 59 + .../drm/amd/display/dc/dcn35/dcn35_hubbub.c | 573 + .../drm/amd/display/dc/dcn35/dcn35_hubbub.h | 150 + .../gpu/drm/amd/display/dc/dcn35/dcn35_hubp.c | 104 + .../gpu/drm/amd/display/dc/dcn35/dcn35_hubp.h | 59 + .../drm/amd/display/dc/dcn35/dcn35_hwseq.c | 1193 + .../drm/amd/display/dc/dcn35/dcn35_hwseq.h | 82 + .../gpu/drm/amd/display/dc/dcn35/dcn35_init.c | 167 + .../gpu/drm/amd/display/dc/dcn35/dcn35_init.h | 32 + .../drm/amd/display/dc/dcn35/dcn35_mmhubbub.c | 57 + .../drm/amd/display/dc/dcn35/dcn35_mmhubbub.h | 73 + .../gpu/drm/amd/display/dc/dcn35/dcn35_opp.c | 51 + .../gpu/drm/amd/display/dc/dcn35/dcn35_opp.h | 65 + .../gpu/drm/amd/display/dc/dcn35/dcn35_optc.c | 284 + .../gpu/drm/amd/display/dc/dcn35/dcn35_optc.h | 219 + .../drm/amd/display/dc/dcn35/dcn35_pg_cntl.c | 553 + .../drm/amd/display/dc/dcn35/dcn35_pg_cntl.h | 193 + .../drm/amd/display/dc/dcn35/dcn35_resource.c | 2085 + .../drm/amd/display/dc/dcn35/dcn35_resource.h | 307 + drivers/gpu/drm/amd/display/dc/dml/Makefile | 3 + .../drm/amd/display/dc/dml/dcn32/dcn32_fpu.c | 80 + .../amd/display/dc/dml/dcn321/dcn321_fpu.c | 81 + .../drm/amd/display/dc/dml/dcn35/dcn35_fpu.c | 484 + .../drm/amd/display/dc/dml/dcn35/dcn35_fpu.h | 44 + drivers/gpu/drm/amd/display/dc/dml2/Makefile | 69 + .../gpu/drm/amd/display/dc/dml2/cmntypes.h | 92 + .../amd/display/dc/dml2/display_mode_core.c | 10275 +++ .../amd/display/dc/dml2/display_mode_core.h | 199 + .../dc/dml2/display_mode_core_structs.h | 1968 + .../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 | 734 + .../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 | 311 + .../gpu/drm/amd/display/dc/dml2/dml2_policy.h | 47 + .../display/dc/dml2/dml2_translation_helper.c | 1109 + .../display/dc/dml2/dml2_translation_helper.h | 39 + .../gpu/drm/amd/display/dc/dml2/dml2_utils.c | 452 + .../gpu/drm/amd/display/dc/dml2/dml2_utils.h | 143 + .../drm/amd/display/dc/dml2/dml2_wrapper.c | 730 + .../drm/amd/display/dc/dml2/dml2_wrapper.h | 210 + .../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/gpio/hw_factory.c | 1 + .../drm/amd/display/dc/gpio/hw_translate.c | 1 + .../gpu/drm/amd/display/dc/inc/core_types.h | 3 + .../gpu/drm/amd/display/dc/inc/hw/clk_mgr.h | 1 + .../gpu/drm/amd/display/dc/inc/hw/pg_cntl.h | 52 + .../amd/display/dc/inc/hw/stream_encoder.h | 5 + .../gpu/drm/amd/display/dc/inc/hw_sequencer.h | 10 + .../amd/display/dc/inc/hw_sequencer_private.h | 2 + drivers/gpu/drm/amd/display/dc/irq/Makefile | 9 + .../dc/irq/dce110/irq_service_dce110.c | 12 +- .../dc/irq/dce120/irq_service_dce120.c | 12 +- .../display/dc/irq/dce60/irq_service_dce60.c | 12 +- .../display/dc/irq/dce80/irq_service_dce80.c | 12 +- .../display/dc/irq/dcn10/irq_service_dcn10.c | 14 +- .../display/dc/irq/dcn20/irq_service_dcn20.c | 14 +- .../dc/irq/dcn201/irq_service_dcn201.c | 14 +- .../display/dc/irq/dcn21/irq_service_dcn21.c | 16 +- .../display/dc/irq/dcn30/irq_service_dcn30.c | 16 +- .../dc/irq/dcn302/irq_service_dcn302.c | 16 +- .../dc/irq/dcn303/irq_service_dcn303.c | 14 +- .../display/dc/irq/dcn31/irq_service_dcn31.c | 16 +- .../dc/irq/dcn314/irq_service_dcn314.c | 16 +- .../dc/irq/dcn315/irq_service_dcn315.c | 16 +- .../display/dc/irq/dcn32/irq_service_dcn32.c | 16 +- .../display/dc/irq/dcn35/irq_service_dcn35.c | 427 + .../display/dc/irq/dcn35/irq_service_dcn35.h | 34 + .../gpu/drm/amd/display/dc/irq/irq_service.h | 2 +- .../gpu/drm/amd/display/dc/link/link_dpms.c | 23 + drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 23 + drivers/gpu/drm/amd/display/dmub/src/Makefile | 1 + .../gpu/drm/amd/display/dmub/src/dmub_dcn35.c | 552 + .../gpu/drm/amd/display/dmub/src/dmub_dcn35.h | 282 + .../gpu/drm/amd/display/dmub/src/dmub_srv.c | 76 +- .../gpu/drm/amd/display/include/dal_types.h | 2 + .../include/asic_reg/dcn/dcn_3_5_0_offset.h | 15255 +++++ .../include/asic_reg/dcn/dcn_3_5_0_sh_mask.h | 53412 ++++++++++++++++ 143 files changed, 101257 insertions(+), 148 deletions(-) create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn35/dcn35_clk_mgr.c create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn35/dcn35_clk_mgr.h create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn35/dcn35_smu.c create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn35/dcn35_smu.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/Makefile create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dccg.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dccg.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dio_link_encoder.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dio_link_encoder.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dio_stream_encoder.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dio_stream_encoder.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dpp.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dpp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dsc.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dsc.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dwb.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_dwb.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_hubbub.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_hubbub.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_hubp.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_hubp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_hwseq.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_hwseq.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_init.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_init.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_mmhubbub.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_mmhubbub.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_opp.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_opp.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_optc.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_optc.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_pg_cntl.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_pg_cntl.h create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_resource.c create mode 100644 drivers/gpu/drm/amd/display/dc/dcn35/dcn35_resource.h create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dcn35/dcn35_fpu.c create mode 100644 drivers/gpu/drm/amd/display/dc/dml/dcn35/dcn35_fpu.h 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 create mode 100644 drivers/gpu/drm/amd/display/dc/inc/hw/pg_cntl.h create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dcn35/irq_service_dcn35.c create mode 100644 drivers/gpu/drm/amd/display/dc/irq/dcn35/irq_service_dcn35.h create mode 100644 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn35.c create mode 100644 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn35.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_3_5_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_3_5_0_sh_mask.h -- 2.41.0