On Wed, Jun 02, 2021 at 12:47:40PM -0400, Alex Deucher wrote: > This patch set adds initial support for Yellow Carp, a new > GPU from AMD.
Always happy to see the new GPU support. :-) Series are Acked-by: Huang Rui <ray.hu...@amd.com> > > I did not send out patch 1 due to its size (new register headers), > but you can view the entire patch set here: > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgitlab.freedesktop.org%2Fagd5f%2Flinux%2F-%2Fcommits%2Fyellow_carp&data=04%7C01%7Cray.huang%40amd.com%7C1937eee84d9c4cb003d008d925e66f99%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637582493915660523%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=7JQvLB%2FCIkDRV5jpSn27hq9hxtdHnmDyDmGJr3bzuis%3D&reserved=0 > > > > Aaron Liu (42): > drm/amdgpu: add yellow carp asic header files (v3) > drm/amdgpu: add yellow carp asic_type enum > drm/amdgpu: add uapi to define yellow carp series > drm/amdgpu: add yellow carp support for gpu_info and ip block setting > drm/amdgpu: add nv common ip block support for yellow carp > drm/amdgpu: add yellow carp support for ih block > drm/amdgpu: add gmc v10 supports for yellow carp > drm/amdgpu: support fw load type for yellow carp > drm/amdgpu: add gfx support for yellow carp > drm/amdgpu: add sdma support for yellow carp > drm/amdgpu: set ip blocks for yellow carp > drm/amdkfd: add yellow carp KFD support > drm/amdgpu: support nbio_7_2_1 for yellow carp > drm/admgpu/pm: add smu v13 driver interface header for yellow carp > (v3) > drm/amdgpu/pm: add smu v13.0.1 firmware header for yellow carp (V4) > drm/amdgpu/pm: add smu v13.0.1 smc header for yellow carp (v2) > drm/amd/pm: add smu13 ip support for moment(V3) > drm/amd/pm: add yellow_carp_ppt implementation(V3) > drm/amd/pm: partially enable swsmu for yellow carp(V2) > drm/amdgpu: add smu ip block for yellow carp(V3) > drm/amdgpu: add gfx golden settings for yellow carp (v3) > drm/amdgpu: reserved buffer is not needed with ip discovery enabled > drm/amdgpu: add psp_v13 support for yellow carp > drm/amdgpu: enable psp_v13 for yellow carp > drm/amdgpu/pm: set_pp_feature is unsupport for yellow carp > drm/amdgpu/pm: add set_driver_table_location implementation for yellow > carp > drm/amdgpu: add GFX Clock Gating support for yellow carp > drm/amdgpu: add MMHUB Clock Gating support for yellow carp > drm/amdgpu: add GFX Power Gating support for yellow carp > drm/amdgpu/pm: enable smu_hw_init for yellow carp > drm/amdgpu/pm: add gfx_off_control for yellow carp > drm/amdgpu/pm: enable gfx_off in yellow carp smu post init > drm/amdgpu: add SDMA Clock Gating support for yellow carp > drm/amdgpu: add HDP Clock Gating support for yellow carp > drm/amdgpu: add ATHUB Clock Gating support for yellow carp > drm/amdgpu: add IH Clock Gating support for yellow carp > drm/amdgpu: enable VCN PG and CG for yellow carp > drm/amdgpu/pm: support smu_post_init for yellow carp > drm/amdgpu: add RLC_PG_DELAY_3 for yellow carp > drm/amdgpu: add timestamp counter query support for yellow carp > drm/amd/pm: add PrepareMp1ForUnload support for yellow carp > drm/amdgpu: add mode2 reset support for yellow carp > > Alex Deucher (2): > drm/amdgpu: add yellow_carp_reg_base_init function for yellow carp > (v2) > drm/amdgpu: add mmhub client support for yellow carp > > Huang Rui (2): > drm/amdgpu: introduce a stolen reserved buffer to protect specific > buffer region (v2) > drm/amd/pm: add vcn/jepg enable functions for yellow carp > > James Zhu (5): > drm/amdgpu/jpeg: Remove harvest checking on CHIP_YELLOW_CARP > drm/amdgpu/vcn: add vcn support for yellow carp > drm/amdgpu: enable vcn/jpeg on yellow carp > drm/amdgpu: enable vcn dpg mode on yellow carp > drm/amdgpu: add video_codecs query support for yellow carp > > Nicholas Kazlauskas (22): > drm/amdgpu: Load TA firmware for yellow carp > drm/amdgpu: Update atomfirmware for DCN3.1 phy tuning and eDP caps > drm/amd/display: Add DCN3.1 yellow carp asic family IDs > drm/amd/display: Add DCN3.1 clock manager support > drm/amd/display: Add DCN3.1 DCCG > drm/amd/display: Add DCN3.1 DIO > drm/amd/display: Add DCN3.1 OPTC > drm/amd/display: Add DCN3.1 DCHHUB > drm/amd/display: Add DCN3.1 DML calculation support > drm/amd/display: Add DCN3.1 IRQ manager > drm/amd/display: Add DCN3.1 GPIO support > drm/amd/display: Add DCN3.1 DMCUB > drm/amd/display: Add DCN3.1 PANEL > drm/amd/display: Add DCN3.1 HDCP support > drm/amd/display: Add DCN3.1 BIOS parser support > drm/amd/display: Add DCN3.1 HWSEQ > drm/amd/display: Add z10 restore checks for DC interfaces > drm/amd/display: Add DCN3.1 Resource > drm/amd/display: Add DCN3.1 blocks to the DC Makefile > drm/amd/display: Add DCN3.1 Yellow Carp support to DM > drm/amd/display: Add DC DCN3.1 support to Kconfig > drm/amdgpu: Add DC support and display block for Yellow Carp > > Xiaomeng Hou (16): > drm/amd/pm: add read_sensor function for yellow carp > drm/amd/pm: add set_watermarks_table function for yellow carp > drm/amd/pm: add the fine grain tuning function for yellow carp > drm/amd/pm: add support to get dpm clock value for yellow carp > drm/amd/pm: add feature map for yellow carp > drm/amd/pm: implement is_dpm_running() callback for yellow carp > drm/amd/pm: initialize feature_enabled/feature_support bitmap for > yellow carp > drm/amd/pm: add callback force_clk_levels for yellow carp > drm/amd/pm: add callback to get bootup values for yellow carp > drm/amd/pm: add callback get_dpm_ultimate_freq for yellow carp > drm/amd/pm: add callbacks to read/write sysfs file > pp_power_profile_mode > drm/amd/pm: add the interface to dump smu metrics table for yellow > carp > drm/amdgpu: add gpu harvest support for yellow carp (v2) > drm/amdgpu: correct the cu and rb info for yellow carp > drm/amd/pm: add set_performance_level function for yellow carp > drm/amd/pm: disable manually setting MCLK power level on yellow carp > > drivers/gpu/drm/amd/amdgpu/Makefile | 2 +- > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 9 + > drivers/gpu/drm/amd/amdgpu/amdgpu_gfxhub.h | 1 + > drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 19 + > drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h | 1 + > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 4 + > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 10 + > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 4 + > drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 1 + > drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 8 + > drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 83 +- > drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.c | 40 + > drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 17 +- > drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.c | 9 +- > drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.c | 1 + > drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 1 + > drivers/gpu/drm/amd/amdgpu/nbio_v7_2.c | 142 +- > drivers/gpu/drm/amd/amdgpu/nv.c | 51 + > drivers/gpu/drm/amd/amdgpu/nv.h | 2 + > drivers/gpu/drm/amd/amdgpu/psp_v13_0.c | 37 +- > drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c | 7 + > .../gpu/drm/amd/amdgpu/yellow_carp_reg_init.c | 51 + > drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 52 + > drivers/gpu/drm/amd/amdkfd/kfd_device.c | 19 + > .../drm/amd/amdkfd/kfd_device_queue_manager.c | 1 + > drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 1 + > .../gpu/drm/amd/amdkfd/kfd_packet_manager.c | 1 + > drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 1 + > drivers/gpu/drm/amd/display/Kconfig | 7 + > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 44 + > .../amd/display/amdgpu_dm/amdgpu_dm_hdcp.c | 13 + > .../amd/display/amdgpu_dm/amdgpu_dm_helpers.c | 6 + > drivers/gpu/drm/amd/display/dc/Makefile | 3 + > .../drm/amd/display/dc/bios/bios_parser2.c | 113 + > .../display/dc/bios/command_table_helper2.c | 5 + > .../gpu/drm/amd/display/dc/clk_mgr/Makefile | 11 + > .../gpu/drm/amd/display/dc/clk_mgr/clk_mgr.c | 30 + > .../display/dc/clk_mgr/dcn20/dcn20_clk_mgr.c | 4 + > .../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.c | 673 + > .../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.h | 103 + > .../amd/display/dc/clk_mgr/dcn31/dcn31_smu.c | 333 + > .../amd/display/dc/clk_mgr/dcn31/dcn31_smu.h | 271 + > drivers/gpu/drm/amd/display/dc/core/dc.c | 17 + > drivers/gpu/drm/amd/display/dc/core/dc_link.c | 18 + > .../gpu/drm/amd/display/dc/core/dc_resource.c | 26 + > .../gpu/drm/amd/display/dc/core/dc_stream.c | 6 + > drivers/gpu/drm/amd/display/dc/dc.h | 28 + > drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c | 23 + > drivers/gpu/drm/amd/display/dc/dc_dmub_srv.h | 3 + > .../gpu/drm/amd/display/dc/dce/dce_hwseq.h | 21 +- > .../display/dc/dce110/dce110_hw_sequencer.c | 23 + > .../drm/amd/display/dc/dcn10/dcn10_hubbub.h | 48 + > .../amd/display/dc/dcn10/dcn10_link_encoder.h | 20 + > .../gpu/drm/amd/display/dc/dcn10/dcn10_optc.c | 11 + > .../gpu/drm/amd/display/dc/dcn10/dcn10_optc.h | 2 + > .../gpu/drm/amd/display/dc/dcn20/dcn20_dccg.h | 54 + > .../drm/amd/display/dc/dcn20/dcn20_hubbub.h | 9 + > .../gpu/drm/amd/display/dc/dcn20/dcn20_hubp.h | 16 + > .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 37 + > .../drm/amd/display/dc/dcn20/dcn20_resource.c | 39 + > .../drm/amd/display/dc/dcn30/dcn30_hwseq.c | 5 + > drivers/gpu/drm/amd/display/dc/dcn31/Makefile | 35 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_dccg.c | 279 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_dccg.h | 147 + > .../display/dc/dcn31/dcn31_dio_link_encoder.c | 412 + > .../display/dc/dcn31/dcn31_dio_link_encoder.h | 246 + > .../drm/amd/display/dc/dcn31/dcn31_hubbub.c | 956 + > .../drm/amd/display/dc/dcn31/dcn31_hubbub.h | 122 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_hubp.c | 103 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_hubp.h | 246 + > .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 598 + > .../drm/amd/display/dc/dcn31/dcn31_hwseq.h | 56 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_init.c | 151 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_init.h | 33 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_optc.c | 287 + > .../gpu/drm/amd/display/dc/dcn31/dcn31_optc.h | 259 + > .../amd/display/dc/dcn31/dcn31_panel_cntl.c | 157 + > .../amd/display/dc/dcn31/dcn31_panel_cntl.h | 40 + > .../drm/amd/display/dc/dcn31/dcn31_resource.c | 2180 + > .../drm/amd/display/dc/dcn31/dcn31_resource.h | 42 + > drivers/gpu/drm/amd/display/dc/dm_cp_psp.h | 5 + > drivers/gpu/drm/amd/display/dc/dm_helpers.h | 6 + > drivers/gpu/drm/amd/display/dc/dml/Makefile | 11 + > .../dc/dml/dcn31/display_mode_vba_31.c | 7506 ++ > .../dc/dml/dcn31/display_mode_vba_31.h | 43 + > .../dc/dml/dcn31/display_rq_dlg_calc_31.c | 1727 + > .../dc/dml/dcn31/display_rq_dlg_calc_31.h | 69 + > .../drm/amd/display/dc/dml/display_mode_lib.c | 18 + > .../drm/amd/display/dc/dml/display_mode_lib.h | 4 + > .../amd/display/dc/dml/display_mode_structs.h | 12 + > .../drm/amd/display/dc/dml/display_mode_vba.c | 42 + > .../drm/amd/display/dc/dml/display_mode_vba.h | 52 + > .../gpu/drm/amd/display/dc/gpio/hw_factory.c | 3 + > .../drm/amd/display/dc/gpio/hw_translate.c | 3 + > .../gpu/drm/amd/display/dc/inc/core_types.h | 10 + > .../gpu/drm/amd/display/dc/inc/hw/clk_mgr.h | 3 + > drivers/gpu/drm/amd/display/dc/inc/hw/dccg.h | 56 + > .../gpu/drm/amd/display/dc/inc/hw/dchubbub.h | 5 + > .../drm/amd/display/dc/inc/hw/link_encoder.h | 14 + > .../gpu/drm/amd/display/dc/inc/hw/mem_input.h | 4 + > .../amd/display/dc/inc/hw/timing_generator.h | 4 + > .../gpu/drm/amd/display/dc/inc/hw_sequencer.h | 4 + > drivers/gpu/drm/amd/display/dc/irq/Makefile | 11 + > .../display/dc/irq/dcn31/irq_service_dcn31.c | 432 + > .../display/dc/irq/dcn31/irq_service_dcn31.h | 37 + > drivers/gpu/drm/amd/display/dmub/dmub_srv.h | 12 + > .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 118 + > drivers/gpu/drm/amd/display/dmub/src/Makefile | 3 + > .../gpu/drm/amd/display/dmub/src/dmub_dcn31.c | 354 + > .../gpu/drm/amd/display/dmub/src/dmub_dcn31.h | 230 + > .../gpu/drm/amd/display/dmub/src/dmub_srv.c | 37 + > .../gpu/drm/amd/display/include/dal_asic_id.h | 13 + > .../gpu/drm/amd/display/include/dal_types.h | 3 + > .../drm/amd/display/modules/hdcp/hdcp_log.c | 4 + > .../drm/amd/display/modules/hdcp/hdcp_psp.c | 135 +- > .../drm/amd/display/modules/hdcp/hdcp_psp.h | 38 + > .../drm/amd/display/modules/inc/mod_hdcp.h | 23 +- > .../include/asic_reg/dcn/dcn_3_1_2_offset.h | 15083 +++ > .../include/asic_reg/dcn/dcn_3_1_2_sh_mask.h | 60747 +++++++++ > .../include/asic_reg/dpcs/dpcs_4_2_0_offset.h | 11936 ++ > .../asic_reg/dpcs/dpcs_4_2_0_sh_mask.h | 103385 +++++++++++++++ > .../include/asic_reg/mp/mp_13_0_1_offset.h | 355 + > .../include/asic_reg/mp/mp_13_0_1_sh_mask.h | 531 + > drivers/gpu/drm/amd/include/atomfirmware.h | 56 +- > .../gpu/drm/amd/include/yellow_carp_offset.h | 1366 + > .../amd/pm/inc/smu13_driver_if_yellow_carp.h | 222 + > drivers/gpu/drm/amd/pm/inc/smu_v13_0_1.h | 57 + > drivers/gpu/drm/amd/pm/inc/smu_v13_0_1_pmfw.h | 139 + > .../gpu/drm/amd/pm/inc/smu_v13_0_1_ppsmc.h | 97 + > drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 7 + > drivers/gpu/drm/amd/pm/swsmu/smu13/Makefile | 2 +- > .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_1.c | 311 + > .../drm/amd/pm/swsmu/smu13/yellow_carp_ppt.c | 1210 + > .../drm/amd/pm/swsmu/smu13/yellow_carp_ppt.h | 28 + > include/drm/amd_asic_type.h | 1 + > include/uapi/drm/amdgpu_drm.h | 1 + > 136 files changed, 215465 insertions(+), 66 deletions(-) > create mode 100644 drivers/gpu/drm/amd/amdgpu/yellow_carp_reg_init.c > create mode 100644 > drivers/gpu/drm/amd/display/dc/clk_mgr/dcn31/dcn31_clk_mgr.c > create mode 100644 > drivers/gpu/drm/amd/display/dc/clk_mgr/dcn31/dcn31_clk_mgr.h > create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn31/dcn31_smu.c > create mode 100644 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn31/dcn31_smu.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/Makefile > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_dccg.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_dccg.h > create mode 100644 > drivers/gpu/drm/amd/display/dc/dcn31/dcn31_dio_link_encoder.c > create mode 100644 > drivers/gpu/drm/amd/display/dc/dcn31/dcn31_dio_link_encoder.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hubbub.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hubbub.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hubp.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hubp.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hwseq.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_hwseq.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_init.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_init.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_optc.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_optc.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_panel_cntl.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_panel_cntl.h > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_resource.c > create mode 100644 drivers/gpu/drm/amd/display/dc/dcn31/dcn31_resource.h > create mode 100644 > drivers/gpu/drm/amd/display/dc/dml/dcn31/display_mode_vba_31.c > create mode 100644 > drivers/gpu/drm/amd/display/dc/dml/dcn31/display_mode_vba_31.h > create mode 100644 > drivers/gpu/drm/amd/display/dc/dml/dcn31/display_rq_dlg_calc_31.c > create mode 100644 > drivers/gpu/drm/amd/display/dc/dml/dcn31/display_rq_dlg_calc_31.h > create mode 100644 > drivers/gpu/drm/amd/display/dc/irq/dcn31/irq_service_dcn31.c > create mode 100644 > drivers/gpu/drm/amd/display/dc/irq/dcn31/irq_service_dcn31.h > create mode 100644 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn31.c > create mode 100644 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn31.h > create mode 100644 > drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_3_1_2_offset.h > create mode 100644 > drivers/gpu/drm/amd/include/asic_reg/dcn/dcn_3_1_2_sh_mask.h > create mode 100644 > drivers/gpu/drm/amd/include/asic_reg/dpcs/dpcs_4_2_0_offset.h > create mode 100644 > drivers/gpu/drm/amd/include/asic_reg/dpcs/dpcs_4_2_0_sh_mask.h > create mode 100644 drivers/gpu/drm/amd/include/asic_reg/mp/mp_13_0_1_offset.h > create mode 100644 > drivers/gpu/drm/amd/include/asic_reg/mp/mp_13_0_1_sh_mask.h > create mode 100644 drivers/gpu/drm/amd/include/yellow_carp_offset.h > create mode 100644 drivers/gpu/drm/amd/pm/inc/smu13_driver_if_yellow_carp.h > create mode 100644 drivers/gpu/drm/amd/pm/inc/smu_v13_0_1.h > create mode 100644 drivers/gpu/drm/amd/pm/inc/smu_v13_0_1_pmfw.h > create mode 100644 drivers/gpu/drm/amd/pm/inc/smu_v13_0_1_ppsmc.h > create mode 100644 drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_1.c > create mode 100644 drivers/gpu/drm/amd/pm/swsmu/smu13/yellow_carp_ppt.c > create mode 100644 drivers/gpu/drm/amd/pm/swsmu/smu13/yellow_carp_ppt.h > > -- > 2.31.1 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfx&data=04%7C01%7Cray.huang%40amd.com%7C1937eee84d9c4cb003d008d925e66f99%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637582493915660523%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Qmgz7X9ZWslau62%2B2oNUhPVJDIvvm9BQTsLLwlI18rI%3D&reserved=0 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx