Home
last modified time | relevance | path

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

/Linux-v5.10/drivers/gpu/drm/amd/display/dc/inc/hw/
Ddchubbub.h111 struct hubbub *hubbub,
115 struct hubbub *hubbub,
118 struct hubbub *hubbub,
122 bool (*get_dcc_compression_cap)(struct hubbub *hubbub,
136 void (*wm_read_state)(struct hubbub *hubbub,
139 void (*get_dchub_ref_freq)(struct hubbub *hubbub,
144 struct hubbub *hubbub,
149 bool (*is_allow_self_refresh_enabled)(struct hubbub *hubbub);
150 void (*allow_self_refresh_control)(struct hubbub *hubbub, bool allow);
152 void (*apply_DEDCN21_147_wa)(struct hubbub *hubbub);
[all …]
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/dcn20/
Ddcn20_hubbub.h42 #define TO_DCN20_HUBBUB(hubbub)\ argument
43 container_of(hubbub, struct dcn20_hubbub, base)
77 struct hubbub base;
88 void hubbub2_construct(struct dcn20_hubbub *hubbub,
104 bool hubbub2_get_dcc_compression_cap(struct hubbub *hubbub,
108 bool hubbub2_initialize_vmids(struct hubbub *hubbub,
112 int hubbub2_init_dchub_sys_ctx(struct hubbub *hubbub,
114 void hubbub2_init_vm_ctx(struct hubbub *hubbub,
117 void hubbub2_update_dchub(struct hubbub *hubbub,
120 void hubbub2_get_dchub_ref_freq(struct hubbub *hubbub,
[all …]
Ddcn20_hubbub.c218 bool hubbub2_get_dcc_compression_cap(struct hubbub *hubbub, in hubbub2_get_dcc_compression_cap() argument
222 struct dc *dc = hubbub->ctx->dc; in hubbub2_get_dcc_compression_cap()
234 if (!hubbub->funcs->dcc_support_pixel_format(input->format, in hubbub2_get_dcc_compression_cap()
238 if (!hubbub->funcs->dcc_support_swizzle(input->swizzle_mode, bpe, in hubbub2_get_dcc_compression_cap()
242 hubbub2_det_request_size(TO_DCN20_HUBBUB(hubbub)->detile_buf_size, in hubbub2_get_dcc_compression_cap()
360 void hubbub2_init_vm_ctx(struct hubbub *hubbub, in hubbub2_init_vm_ctx() argument
364 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub2_init_vm_ctx()
376 int hubbub2_init_dchub_sys_ctx(struct hubbub *hubbub, in hubbub2_init_dchub_sys_ctx() argument
379 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub2_init_dchub_sys_ctx()
413 void hubbub2_update_dchub(struct hubbub *hubbub, in hubbub2_update_dchub() argument
[all …]
Ddcn20_hwseq.c1593 if (dc->res_pool->hubbub->funcs->force_wm_propagate_to_pipes) in dcn20_program_pipe()
1594 dc->res_pool->hubbub->funcs->force_wm_propagate_to_pipes(dc->res_pool->hubbub); in dcn20_program_pipe()
1747 dc->res_pool->hubbub->funcs->apply_DEDCN21_147_wa(dc->res_pool->hubbub); in dcn20_post_unlock_program_front_end()
1758 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, false); in dcn20_post_unlock_program_front_end()
1770 struct hubbub *hubbub = dc->res_pool->hubbub; in dcn20_prepare_bandwidth() local
1778 dc->wm_optimized_required = hubbub->funcs->program_watermarks(hubbub, in dcn20_prepare_bandwidth()
1788 struct hubbub *hubbub = dc->res_pool->hubbub; in dcn20_optimize_bandwidth() local
1791 hubbub->funcs->program_watermarks(hubbub, in dcn20_optimize_bandwidth()
1994 dc->res_pool->hubbub->funcs->init_vm_ctx(dc->res_pool->hubbub, &config, vmid); in dcn20_init_vm_ctx()
2012 return dc->res_pool->hubbub->funcs->init_dchub_sys_ctx(dc->res_pool->hubbub, &config); in dcn20_init_sys_ctx()
Ddcn20_resource.h110 struct hubbub *dcn20_hubbub_create(struct dc_context *ctx);
Ddcn20_resource.c1224 struct hubbub *dcn20_hubbub_create(struct dc_context *ctx) in dcn20_hubbub_create()
1227 struct dcn20_hubbub *hubbub = kzalloc(sizeof(struct dcn20_hubbub), in dcn20_hubbub_create() local
1230 if (!hubbub) in dcn20_hubbub_create()
1233 hubbub2_construct(hubbub, ctx, in dcn20_hubbub_create()
1239 struct dcn20_vmid *vmid = &hubbub->vmid[i]; in dcn20_hubbub_create()
1248 return &hubbub->base; in dcn20_hubbub_create()
1479 if (pool->base.hubbub != NULL) { in dcn20_resource_destruct()
1480 kfree(pool->base.hubbub); in dcn20_resource_destruct()
1481 pool->base.hubbub = NULL; in dcn20_resource_destruct()
3288 return dc->res_pool->hubbub->funcs->get_dcc_compression_cap(
[all …]
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/dcn10/
Ddcn10_hubbub.h32 #define TO_DCN10_HUBBUB(hubbub)\ argument
33 container_of(hubbub, struct dcn10_hubbub, base)
294 struct hubbub base;
303 struct hubbub *hubbub,
307 struct hubbub *hubbub);
309 void hubbub1_wm_change_req_wa(struct hubbub *hubbub);
312 struct hubbub *hubbub,
317 void hubbub1_allow_self_refresh_control(struct hubbub *hubbub, bool allow);
319 bool hubbub1_is_allow_self_refresh_enabled(struct hubbub *hubub);
322 struct hubbub *hubbub);
[all …]
Ddcn10_hubbub.c44 void hubbub1_wm_read_state(struct hubbub *hubbub, in hubbub1_wm_read_state() argument
47 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_wm_read_state()
93 void hubbub1_allow_self_refresh_control(struct hubbub *hubbub, bool allow) in hubbub1_allow_self_refresh_control() argument
95 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_allow_self_refresh_control()
106 bool hubbub1_is_allow_self_refresh_enabled(struct hubbub *hubbub) in hubbub1_is_allow_self_refresh_enabled() argument
108 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_is_allow_self_refresh_enabled()
119 struct hubbub *hubbub) in hubbub1_verify_allow_pstate_change_high() argument
121 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_verify_allow_pstate_change_high()
236 void hubbub1_wm_change_req_wa(struct hubbub *hubbub) in hubbub1_wm_change_req_wa() argument
238 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_wm_change_req_wa()
[all …]
Ddcn10_hw_sequencer.c135 dc->res_pool->hubbub->funcs->wm_read_state(dc->res_pool->hubbub, &wm); in dcn10_log_hubbub_state()
718 if (dc->res_pool->hubbub->funcs->is_allow_self_refresh_enabled) in dcn10_bios_golden_init()
720 dc->res_pool->hubbub->funcs->is_allow_self_refresh_enabled(dc->res_pool->hubbub); in dcn10_bios_golden_init()
740 if (dc->res_pool->hubbub->funcs->allow_self_refresh_control) in dcn10_bios_golden_init()
742 dc->res_pool->hubbub->funcs->is_allow_self_refresh_enabled(dc->res_pool->hubbub)) in dcn10_bios_golden_init()
743 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, in dcn10_bios_golden_init()
744 !dc->res_pool->hubbub->ctx->dc->debug.disable_stutter); in dcn10_bios_golden_init()
985 hubbub1_soft_reset(dc->res_pool->hubbub, true); in dcn10_hw_wa_force_recovery()
1008 hubbub1_soft_reset(dc->res_pool->hubbub, false); in dcn10_hw_wa_force_recovery()
1028 if (!hubbub1_verify_allow_pstate_change_high(dc->res_pool->hubbub)) { in dcn10_verify_allow_pstate_change_high()
[all …]
Ddcn10_resource.c759 static struct hubbub *dcn10_hubbub_create(struct dc_context *ctx) in dcn10_hubbub_create()
981 if (pool->base.hubbub != NULL) { in dcn10_resource_destruct()
982 kfree(pool->base.hubbub); in dcn10_resource_destruct()
983 pool->base.hubbub = NULL; in dcn10_resource_destruct()
1184 return dc->res_pool->hubbub->funcs->get_dcc_compression_cap( in dcn10_get_dcc_compression_cap()
1185 dc->res_pool->hubbub, in dcn10_get_dcc_compression_cap()
1658 pool->base.hubbub = dcn10_hubbub_create(ctx); in dcn10_resource_construct()
1659 if (pool->base.hubbub == NULL) { in dcn10_resource_construct()
Ddcn10_hw_sequencer_debug.c84 dc->res_pool->hubbub->funcs->wm_read_state(dc->res_pool->hubbub, &wm); in dcn10_get_hubbub_state()
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/dcn21/
Ddcn21_hubbub.h113 void dcn21_dchvm_init(struct hubbub *hubbub);
114 int hubbub21_init_dchub(struct hubbub *hubbub,
117 struct hubbub *hubbub,
122 struct hubbub *hubbub,
127 struct hubbub *hubbub,
132 struct hubbub *hubbub,
137 void hubbub21_wm_read_state(struct hubbub *hubbub,
140 void hubbub21_construct(struct dcn20_hubbub *hubbub,
Ddcn21_hubbub.c67 void dcn21_dchvm_init(struct hubbub *hubbub) in dcn21_dchvm_init() argument
69 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in dcn21_dchvm_init()
105 int hubbub21_init_dchub(struct hubbub *hubbub, in hubbub21_init_dchub() argument
108 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub21_init_dchub()
134 dcn21_dchvm_init(hubbub); in hubbub21_init_dchub()
140 struct hubbub *hubbub, in hubbub21_program_urgent_watermarks() argument
145 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub21_program_urgent_watermarks()
334 struct hubbub *hubbub, in hubbub21_program_stutter_watermarks() argument
339 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub21_program_stutter_watermarks()
487 struct hubbub *hubbub, in hubbub21_program_pstate_watermarks() argument
[all …]
Ddcn21_hwseq.c83 return dc->res_pool->hubbub->funcs->init_dchub_sys_ctx(dc->res_pool->hubbub, &config); in dcn21_init_sys_ctx()
Ddcn21_resource.c928 if (pool->base.hubbub != NULL) { in dcn21_resource_destruct()
929 kfree(pool->base.hubbub); in dcn21_resource_destruct()
930 pool->base.hubbub = NULL; in dcn21_resource_destruct()
1279 static struct hubbub *dcn21_hubbub_create(struct dc_context *ctx) in dcn21_hubbub_create()
1283 struct dcn20_hubbub *hubbub = kzalloc(sizeof(struct dcn20_hubbub), in dcn21_hubbub_create() local
1286 if (!hubbub) in dcn21_hubbub_create()
1289 hubbub21_construct(hubbub, ctx, in dcn21_hubbub_create()
1295 struct dcn20_vmid *vmid = &hubbub->vmid[i]; in dcn21_hubbub_create()
1303 hubbub->num_vmid = res_cap_rn.num_vmid; in dcn21_hubbub_create()
1305 return &hubbub->base; in dcn21_hubbub_create()
[all …]
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/dcn30/
Ddcn30_hubbub.c64 int hubbub3_init_dchub_sys_ctx(struct hubbub *hubbub, in hubbub3_init_dchub_sys_ctx() argument
67 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub3_init_dchub_sys_ctx()
97 struct hubbub *hubbub, in hubbub3_program_watermarks() argument
102 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub3_program_watermarks()
105 if (hubbub21_program_urgent_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub3_program_watermarks()
108 if (hubbub21_program_stutter_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub3_program_watermarks()
111 if (hubbub21_program_pstate_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub3_program_watermarks()
132 hubbub1_allow_self_refresh_control(hubbub, !hubbub->ctx->dc->debug.disable_stutter); in hubbub3_program_watermarks()
275 bool hubbub3_get_dcc_compression_cap(struct hubbub *hubbub, in hubbub3_get_dcc_compression_cap() argument
279 struct dc *dc = hubbub->ctx->dc; in hubbub3_get_dcc_compression_cap()
[all …]
Ddcn30_hubbub.h98 int hubbub3_init_dchub_sys_ctx(struct hubbub *hubbub,
107 void hubbub3_force_wm_propagate_to_pipes(struct hubbub *hubbub);
109 bool hubbub3_get_dcc_compression_cap(struct hubbub *hubbub,
114 struct hubbub *hubbub,
Ddcn30_hwseq.c470 if (res_pool->dccg && res_pool->hubbub) { in dcn30_init_hw()
476 (res_pool->hubbub->funcs->get_dchub_ref_freq)(res_pool->hubbub, in dcn30_init_hw()
551 if (dc->res_pool->hubbub->funcs->allow_self_refresh_control) in dcn30_init_hw()
552 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, in dcn30_init_hw()
553 !dc->res_pool->hubbub->ctx->dc->debug.disable_stutter); in dcn30_init_hw()
Ddcn30_resource.c991 struct hubbub *dcn30_hubbub_create(struct dc_context *ctx) in dcn30_hubbub_create()
1229 if (pool->base.hubbub != NULL) { in dcn30_resource_destruct()
1230 kfree(pool->base.hubbub); in dcn30_resource_destruct()
1231 pool->base.hubbub = NULL; in dcn30_resource_destruct()
2716 pool->base.hubbub = dcn30_hubbub_create(ctx); in dcn30_resource_construct()
2717 if (pool->base.hubbub == NULL) { in dcn30_resource_construct()
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/inc/
Dcore_types.h190 struct hubbub *hubbub; member
/Linux-v5.10/drivers/gpu/drm/amd/display/dc/calcs/
Ddcn_calcs.c332 input->src.dcc = pipe->plane_res.dpp->ctx->dc->res_pool->hubbub->funcs-> in pipe_ctx_to_e2e_pipe_params()
1018 v->dcc_enable[input_idx] = dc->res_pool->hubbub->funcs->dcc_support_pixel_format( in dcn_validate_bandwidth()