| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/ |
| D | dm_pp_smu.h | 54 struct pp_smu { struct 103 struct pp_smu pp_smu; member 109 void (*set_display_count)(struct pp_smu *pp, int count); 118 void (*set_wm_ranges)(struct pp_smu *pp, 124 void (*set_hard_min_dcfclk_by_freq)(struct pp_smu *pp, int mhz); 130 void (*set_min_deep_sleep_dcfclk)(struct pp_smu *pp, int mhz); 135 void (*set_hard_min_fclk_by_freq)(struct pp_smu *pp, int mhz); 140 void (*set_hard_min_socclk_by_freq)(struct pp_smu *pp, int mhz); 143 void (*set_pme_wa_enable)(struct pp_smu *pp); 175 struct pp_smu pp_smu; member [all …]
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn10/ |
| D | rv1_clk_mgr.c | 133 struct pp_smu_funcs_rv *pp_smu = NULL; in rv1_update_clocks() local 140 ASSERT(clk_mgr->pp_smu); in rv1_update_clocks() 142 pp_smu = &clk_mgr->pp_smu->rv_funcs; in rv1_update_clocks() 155 if (pp_smu->set_display_count) in rv1_update_clocks() 156 pp_smu->set_display_count(&pp_smu->pp_smu, display_count); in rv1_update_clocks() 196 if (pp_smu->set_hard_min_fclk_by_freq && in rv1_update_clocks() 197 pp_smu->set_hard_min_dcfclk_by_freq && in rv1_update_clocks() 198 pp_smu->set_min_deep_sleep_dcfclk) { in rv1_update_clocks() 199 pp_smu->set_hard_min_fclk_by_freq(&pp_smu->pp_smu, new_clocks->fclk_khz / 1000); in rv1_update_clocks() 200 pp_smu->set_hard_min_dcfclk_by_freq(&pp_smu->pp_smu, new_clocks->dcfclk_khz / 1000); in rv1_update_clocks() [all …]
|
| D | rv2_clk_mgr.c | 37 …gr_construct(struct dc_context *ctx, struct clk_mgr_internal *clk_mgr, struct pp_smu_funcs *pp_smu) in rv2_clk_mgr_construct() argument 40 rv1_clk_mgr_construct(ctx, clk_mgr, pp_smu); in rv2_clk_mgr_construct()
|
| D | rv1_clk_mgr.h | 29 …r_construct(struct dc_context *ctx, struct clk_mgr_internal *clk_mgr, struct pp_smu_funcs *pp_smu);
|
| D | rv2_clk_mgr.h | 29 …r_construct(struct dc_context *ctx, struct clk_mgr_internal *clk_mgr, struct pp_smu_funcs *pp_smu);
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn20/ |
| D | dcn20_clk_mgr.c | 147 struct pp_smu_funcs_nv *pp_smu = NULL; in request_voltage_and_program_disp_clk() local 150 if (dc->res_pool->pp_smu) in request_voltage_and_program_disp_clk() 151 pp_smu = &dc->res_pool->pp_smu->nv_funcs; in request_voltage_and_program_disp_clk() 155 if (going_up && pp_smu && pp_smu->set_voltage_by_freq) in request_voltage_and_program_disp_clk() 156 …pp_smu->set_voltage_by_freq(&pp_smu->pp_smu, PP_SMU_NV_DISPCLK, clk_mgr_base->clks.dispclk_khz / 1… in request_voltage_and_program_disp_clk() 160 if (!going_up && pp_smu && pp_smu->set_voltage_by_freq) in request_voltage_and_program_disp_clk() 161 …pp_smu->set_voltage_by_freq(&pp_smu->pp_smu, PP_SMU_NV_DISPCLK, clk_mgr_base->clks.dispclk_khz / 1… in request_voltage_and_program_disp_clk() 168 struct pp_smu_funcs_nv *pp_smu = NULL; in request_voltage_and_program_global_dpp_clk() local 171 if (dc->res_pool->pp_smu) in request_voltage_and_program_global_dpp_clk() 172 pp_smu = &dc->res_pool->pp_smu->nv_funcs; in request_voltage_and_program_global_dpp_clk() [all …]
|
| D | dcn20_clk_mgr.h | 43 struct pp_smu_funcs *pp_smu,
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/clk_mgr/ |
| D | clk_mgr.c | 69 struct clk_mgr *dc_clk_mgr_create(struct dc_context *ctx, struct pp_smu_funcs *pp_smu, struct dccg … in dc_clk_mgr_create() argument 116 rn_clk_mgr_construct(ctx, clk_mgr, pp_smu, dccg); in dc_clk_mgr_create() 121 rv2_clk_mgr_construct(ctx, clk_mgr, pp_smu); in dc_clk_mgr_create() 126 rv1_clk_mgr_construct(ctx, clk_mgr, pp_smu); in dc_clk_mgr_create() 134 dcn20_clk_mgr_construct(ctx, clk_mgr, pp_smu, dccg); in dc_clk_mgr_create()
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/amdgpu_dm/ |
| D | amdgpu_dm_pp_smu.c | 542 void pp_rv_set_wm_ranges(struct pp_smu *pp, in pp_rv_set_wm_ranges() 598 void pp_rv_set_pme_wa_enable(struct pp_smu *pp) in pp_rv_set_pme_wa_enable() 611 void pp_rv_set_active_display_count(struct pp_smu *pp, int count) in pp_rv_set_active_display_count() 624 void pp_rv_set_min_deep_sleep_dcfclk(struct pp_smu *pp, int clock) in pp_rv_set_min_deep_sleep_dcfclk() 637 void pp_rv_set_hard_min_dcefclk_by_freq(struct pp_smu *pp, int clock) in pp_rv_set_hard_min_dcefclk_by_freq() 650 void pp_rv_set_hard_min_fclk_by_freq(struct pp_smu *pp, int mhz) in pp_rv_set_hard_min_fclk_by_freq() 663 enum pp_smu_status pp_nv_set_wm_ranges(struct pp_smu *pp, in pp_nv_set_wm_ranges() 724 enum pp_smu_status pp_nv_set_pme_wa_enable(struct pp_smu *pp) in pp_nv_set_pme_wa_enable() 740 enum pp_smu_status pp_nv_set_display_count(struct pp_smu *pp, int count) in pp_nv_set_display_count() 756 enum pp_smu_status pp_nv_set_min_deep_sleep_dcfclk(struct pp_smu *pp, int mhz) in pp_nv_set_min_deep_sleep_dcfclk() [all …]
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn21/ |
| D | rn_clk_mgr.c | 513 struct pp_smu_funcs *pp_smu, in rn_clk_mgr_construct() argument 523 clk_mgr->pp_smu = pp_smu; in rn_clk_mgr_construct() 566 if (pp_smu) { in rn_clk_mgr_construct() 567 pp_smu->rn_funcs.get_dpm_clock_table(&pp_smu->rn_funcs.pp_smu, &clock_table); in rn_clk_mgr_construct() 582 if (pp_smu && pp_smu->rn_funcs.set_wm_ranges) in rn_clk_mgr_construct() 583 pp_smu->rn_funcs.set_wm_ranges(&pp_smu->rn_funcs.pp_smu, &ranges); in rn_clk_mgr_construct()
|
| D | rn_clk_mgr.h | 36 struct pp_smu_funcs *pp_smu,
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/dcn21/ |
| D | dcn21_resource.c | 941 if (pool->base.pp_smu != NULL) in destruct() 942 dcn20_pp_smu_destroy(&pool->base.pp_smu); in destruct() 1320 enum pp_smu_status dummy_set_wm_ranges(struct pp_smu *pp, in dummy_set_wm_ranges() 1326 enum pp_smu_status dummy_get_dpm_clock_table(struct pp_smu *pp, in dummy_get_dpm_clock_table() 1335 struct pp_smu_funcs *pp_smu = kzalloc(sizeof(*pp_smu), GFP_KERNEL); in dcn21_pp_smu_create() local 1337 pp_smu->ctx.ver = PP_SMU_VER_RN; in dcn21_pp_smu_create() 1339 pp_smu->rn_funcs.get_dpm_clock_table = dummy_get_dpm_clock_table; in dcn21_pp_smu_create() 1340 pp_smu->rn_funcs.set_wm_ranges = dummy_set_wm_ranges; in dcn21_pp_smu_create() 1342 return pp_smu; in dcn21_pp_smu_create() 1345 void dcn21_pp_smu_destroy(struct pp_smu_funcs **pp_smu) in dcn21_pp_smu_destroy() argument [all …]
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/dcn10/ |
| D | dcn10_resource.c | 876 struct pp_smu_funcs *pp_smu = kzalloc(sizeof(*pp_smu), GFP_KERNEL); in dcn10_pp_smu_create() local 878 if (!pp_smu) in dcn10_pp_smu_create() 879 return pp_smu; in dcn10_pp_smu_create() 881 dm_pp_get_funcs(ctx, pp_smu); in dcn10_pp_smu_create() 882 return pp_smu; in dcn10_pp_smu_create() 967 kfree(pool->base.pp_smu); in destruct() 1418 pool->base.pp_smu = dcn10_pp_smu_create(ctx); in construct() 1424 if (pool->base.pp_smu != NULL in construct() 1425 && pool->base.pp_smu->rv_funcs.set_pme_wa_enable != NULL) in construct()
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/dcn20/ |
| D | dcn20_resource.c | 1299 if (pool->base.pp_smu != NULL) in destruct() 1300 dcn20_pp_smu_destroy(&pool->base.pp_smu); in destruct() 2952 struct pp_smu_funcs *pp_smu = kzalloc(sizeof(*pp_smu), GFP_KERNEL); in dcn20_pp_smu_create() local 2954 if (!pp_smu) in dcn20_pp_smu_create() 2955 return pp_smu; in dcn20_pp_smu_create() 2957 dm_pp_get_funcs(ctx, pp_smu); in dcn20_pp_smu_create() 2959 if (pp_smu->ctx.ver != PP_SMU_VER_NV) in dcn20_pp_smu_create() 2960 pp_smu = memset(pp_smu, 0, sizeof(struct pp_smu_funcs)); in dcn20_pp_smu_create() 2962 return pp_smu; in dcn20_pp_smu_create() 2965 void dcn20_pp_smu_destroy(struct pp_smu_funcs **pp_smu) in dcn20_pp_smu_destroy() argument [all …]
|
| D | dcn20_resource.h | 99 void dcn20_pp_smu_destroy(struct pp_smu_funcs **pp_smu);
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/inc/hw/ |
| D | clk_mgr.h | 198 struct clk_mgr *dc_clk_mgr_create(struct dc_context *ctx, struct pp_smu_funcs *pp_smu, struct dccg …
|
| D | clk_mgr_internal.h | 195 struct pp_smu_funcs *pp_smu; member
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/dce110/ |
| D | dce110_hw_sequencer.c | 947 struct pp_smu_funcs *pp_smu = NULL; in dce110_enable_audio_stream() local 960 if (core_dc->res_pool->pp_smu) in dce110_enable_audio_stream() 961 pp_smu = core_dc->res_pool->pp_smu; in dce110_enable_audio_stream() 987 struct pp_smu_funcs *pp_smu = NULL; in dce110_disable_audio_stream() local 1004 if (dc->res_pool->pp_smu) in dce110_disable_audio_stream() 1005 pp_smu = dc->res_pool->pp_smu; in dce110_disable_audio_stream()
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/inc/ |
| D | core_types.h | 175 struct pp_smu_funcs *pp_smu; member
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/calcs/ |
| D | dcn_calcs.c | 1494 if (dc->res_pool->pp_smu) in dcn_bw_notify_pplib_of_wm_ranges() 1495 pp = &dc->res_pool->pp_smu->rv_funcs; in dcn_bw_notify_pplib_of_wm_ranges() 1549 pp->set_wm_ranges(&pp->pp_smu, &ranges); in dcn_bw_notify_pplib_of_wm_ranges()
|
| /Linux-v5.4/drivers/gpu/drm/amd/display/dc/core/ |
| D | dc.c | 692 dc->clk_mgr = dc_clk_mgr_create(dc->ctx, dc->res_pool->pp_smu, dc->res_pool->dccg); in construct()
|