Home
last modified time | relevance | path

Searched refs:pp_smu (Results 1 – 21 of 21) sorted by relevance

/Linux-v5.4/drivers/gpu/drm/amd/display/dc/
Ddm_pp_smu.h54 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/
Drv1_clk_mgr.c133 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 …]
Drv2_clk_mgr.c37 …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()
Drv1_clk_mgr.h29 …r_construct(struct dc_context *ctx, struct clk_mgr_internal *clk_mgr, struct pp_smu_funcs *pp_smu);
Drv2_clk_mgr.h29 …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/
Ddcn20_clk_mgr.c147 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()
156pp_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()
161pp_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 …]
Ddcn20_clk_mgr.h43 struct pp_smu_funcs *pp_smu,
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/clk_mgr/
Dclk_mgr.c69 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/
Damdgpu_dm_pp_smu.c542 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/
Drn_clk_mgr.c513 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()
Drn_clk_mgr.h36 struct pp_smu_funcs *pp_smu,
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/dcn21/
Ddcn21_resource.c941 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/
Ddcn10_resource.c876 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/
Ddcn20_resource.c1299 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 …]
Ddcn20_resource.h99 void dcn20_pp_smu_destroy(struct pp_smu_funcs **pp_smu);
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/inc/hw/
Dclk_mgr.h198 struct clk_mgr *dc_clk_mgr_create(struct dc_context *ctx, struct pp_smu_funcs *pp_smu, struct dccg …
Dclk_mgr_internal.h195 struct pp_smu_funcs *pp_smu; member
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/dce110/
Ddce110_hw_sequencer.c947 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/
Dcore_types.h175 struct pp_smu_funcs *pp_smu; member
/Linux-v5.4/drivers/gpu/drm/amd/display/dc/calcs/
Ddcn_calcs.c1494 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/
Ddc.c692 dc->clk_mgr = dc_clk_mgr_create(dc->ctx, dc->res_pool->pp_smu, dc->res_pool->dccg); in construct()