Home
last modified time | relevance | path

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

12

/openbmc/linux/drivers/gpu/drm/amd/display/dc/inc/hw/
H A Ddchubbub.h123 struct hubbub *hubbub,
127 struct hubbub *hubbub,
130 struct hubbub *hubbub,
134 bool (*get_dcc_compression_cap)(struct hubbub *hubbub,
148 void (*wm_read_state)(struct hubbub *hubbub,
151 void (*get_dchub_ref_freq)(struct hubbub *hubbub,
156 struct hubbub *hubbub,
161 bool (*is_allow_self_refresh_enabled)(struct hubbub *hubbub);
162 void (*allow_self_refresh_control)(struct hubbub *hubbub, bool allow);
164 bool (*verify_allow_pstate_change_high)(struct hubbub *hubbub);
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn20/
H A Ddcn20_hubbub.h32 #define TO_DCN20_HUBBUB(hubbub)\ argument
33 container_of(hubbub, struct dcn20_hubbub, base)
83 struct hubbub base;
101 void hubbub2_construct(struct dcn20_hubbub *hubbub,
117 bool hubbub2_get_dcc_compression_cap(struct hubbub *hubbub,
121 bool hubbub2_initialize_vmids(struct hubbub *hubbub,
125 int hubbub2_init_dchub_sys_ctx(struct hubbub *hubbub,
127 void hubbub2_init_vm_ctx(struct hubbub *hubbub,
130 void hubbub2_update_dchub(struct hubbub *hubbub,
133 void hubbub2_get_dchub_ref_freq(struct hubbub *hubbub,
[all …]
H A Ddcn20_hubbub.c217 bool hubbub2_get_dcc_compression_cap(struct hubbub *hubbub, in hubbub2_get_dcc_compression_cap() argument
221 struct dc *dc = hubbub->ctx->dc; in hubbub2_get_dcc_compression_cap()
233 if (!hubbub->funcs->dcc_support_pixel_format(input->format, in hubbub2_get_dcc_compression_cap()
237 if (!hubbub->funcs->dcc_support_swizzle(input->swizzle_mode, bpe, in hubbub2_get_dcc_compression_cap()
241 hubbub2_det_request_size(TO_DCN20_HUBBUB(hubbub)->detile_buf_size, in hubbub2_get_dcc_compression_cap()
357 void hubbub2_init_vm_ctx(struct hubbub *hubbub, in hubbub2_init_vm_ctx() argument
361 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub2_init_vm_ctx()
373 int hubbub2_init_dchub_sys_ctx(struct hubbub *hubbub, in hubbub2_init_dchub_sys_ctx() argument
376 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub2_init_dchub_sys_ctx()
410 void hubbub2_update_dchub(struct hubbub *hubbub, in hubbub2_update_dchub() argument
[all …]
H A Ddcn20_hwseq.c1728 if (dc->res_pool->hubbub->funcs->force_wm_propagate_to_pipes) in dcn20_program_pipe()
1729 dc->res_pool->hubbub->funcs->force_wm_propagate_to_pipes(dc->res_pool->hubbub); in dcn20_program_pipe()
1732 if (dc->res_pool->hubbub->funcs->program_det_size && pipe_ctx->update_flags.bits.det_size) in dcn20_program_pipe()
1733 dc->res_pool->hubbub->funcs->program_det_size( in dcn20_program_pipe()
1734 dc->res_pool->hubbub, pipe_ctx->plane_res.hubp->inst, pipe_ctx->det_buffer_size_kb); in dcn20_program_pipe()
1839 if (dc->res_pool->hubbub->funcs->force_pstate_change_control) in dcn20_program_front_end_for_ctx()
1840 dc->res_pool->hubbub->funcs->force_pstate_change_control( in dcn20_program_front_end_for_ctx()
1841 dc->res_pool->hubbub, true, false); in dcn20_program_front_end_for_ctx()
1885 struct hubbub *hubbub = dc->res_pool->hubbub; in dcn20_program_front_end_for_ctx() local
1893 if (hubbub->funcs->program_det_size && (context->res_ctx.pipe_ctx[i].update_flags.bits.disable || in dcn20_program_front_end_for_ctx()
[all …]
H A Ddcn20_resource.c856 struct hubbub *dcn20_hubbub_create(struct dc_context *ctx) in dcn20_hubbub_create()
859 struct dcn20_hubbub *hubbub = kzalloc(sizeof(struct dcn20_hubbub), in dcn20_hubbub_create() local
862 if (!hubbub) in dcn20_hubbub_create()
865 hubbub2_construct(hubbub, ctx, in dcn20_hubbub_create()
871 struct dcn20_vmid *vmid = &hubbub->vmid[i]; in dcn20_hubbub_create()
880 return &hubbub->base; in dcn20_hubbub_create()
1105 if (pool->base.hubbub != NULL) { in dcn20_resource_destruct()
1106 kfree(pool->base.hubbub); in dcn20_resource_destruct()
1107 pool->base.hubbub = NULL; in dcn20_resource_destruct()
2182 return dc->res_pool->hubbub->funcs->get_dcc_compression_cap( in dcn20_get_dcc_compression_cap()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn201/
H A Ddcn201_hubbub.c54 struct hubbub *hubbub, in hubbub201_program_watermarks() argument
59 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub201_program_watermarks()
62 if (hubbub1_program_urgent_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub201_program_watermarks()
65 if (hubbub1_program_pstate_watermarks(hubbub, watermarks, refclk_mhz, safe_to_lower)) in hubbub201_program_watermarks()
73 hubbub1_allow_self_refresh_control(hubbub, !hubbub->ctx->dc->debug.disable_stutter); in hubbub201_program_watermarks()
91 void hubbub201_construct(struct dcn20_hubbub *hubbub, in hubbub201_construct() argument
97 hubbub->base.ctx = ctx; in hubbub201_construct()
99 hubbub->base.funcs = &hubbub201_funcs; in hubbub201_construct()
101 hubbub->regs = hubbub_regs; in hubbub201_construct()
102 hubbub->shifts = hubbub_shift; in hubbub201_construct()
[all …]
H A Ddcn201_resource.c739 static struct hubbub *dcn201_hubbub_create(struct dc_context *ctx) in dcn201_hubbub_create()
741 struct dcn20_hubbub *hubbub = kzalloc(sizeof(struct dcn20_hubbub), in dcn201_hubbub_create() local
744 if (!hubbub) in dcn201_hubbub_create()
747 hubbub201_construct(hubbub, ctx, in dcn201_hubbub_create()
752 return &hubbub->base; in dcn201_hubbub_create()
923 if (pool->base.hubbub != NULL) { in dcn201_resource_destruct()
924 kfree(pool->base.hubbub); in dcn201_resource_destruct()
925 pool->base.hubbub = NULL; in dcn201_resource_destruct()
1029 return dc->res_pool->hubbub->funcs->get_dcc_compression_cap( in dcn201_get_dcc_compression_cap()
1030 dc->res_pool->hubbub, in dcn201_get_dcc_compression_cap()
[all …]
H A Ddcn201_hubbub.h39 void hubbub201_construct(struct dcn20_hubbub *hubbub,
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn30/
H A 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 …]
H A Ddcn30_hubbub.h110 int hubbub3_init_dchub_sys_ctx(struct hubbub *hubbub,
119 void hubbub3_force_wm_propagate_to_pipes(struct hubbub *hubbub);
121 bool hubbub3_get_dcc_compression_cap(struct hubbub *hubbub,
126 struct hubbub *hubbub,
131 void hubbub3_force_pstate_change_control(struct hubbub *hubbub,
134 void hubbub3_init_watermarks(struct hubbub *hubbub);
H A Ddcn30_hwseq.c477 if (res_pool->dccg && res_pool->hubbub) { in dcn30_init_hw()
483 (res_pool->hubbub->funcs->get_dchub_ref_freq)(res_pool->hubbub, in dcn30_init_hw()
529 if (dc->res_pool->hubbub->funcs->allow_self_refresh_control) in dcn30_init_hw()
530 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, in dcn30_init_hw()
531 !dc->res_pool->hubbub->ctx->dc->debug.disable_stutter); in dcn30_init_hw()
599 if (!dcb->funcs->is_accelerated_mode(dcb) && dc->res_pool->hubbub->funcs->init_watermarks) in dcn30_init_hw()
600 dc->res_pool->hubbub->funcs->init_watermarks(dc->res_pool->hubbub); in dcn30_init_hw()
610 if (dc->res_pool->hubbub->funcs->force_pstate_change_control) in dcn30_init_hw()
611 dc->res_pool->hubbub->funcs->force_pstate_change_control( in dcn30_init_hw()
612 dc->res_pool->hubbub, false, false); in dcn30_init_hw()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn32/
H A Ddcn32_hubbub.h118 struct hubbub *hubbub,
124 struct hubbub *hubbub,
130 struct hubbub *hubbub,
136 struct hubbub *hubbub,
141 void hubbub32_force_usr_retraining_allow(struct hubbub *hubbub, bool allow);
143 void hubbub32_force_wm_propagate_to_pipes(struct hubbub *hubbub);
145 void hubbub32_init(struct hubbub *hubbub);
147 void dcn32_program_det_size(struct hubbub *hubbub, int hubp_inst, unsigned int det_buffer_size_in_k…
158 void hubbub32_set_request_limit(struct hubbub *hubbub, int umc_count, int words_per_umc);
H A Ddcn32_hubbub.c50 static void dcn32_init_crb(struct hubbub *hubbub) in dcn32_init_crb() argument
52 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in dcn32_init_crb()
75 void hubbub32_set_request_limit(struct hubbub *hubbub, int memory_channel_count, int words_per_chan… in hubbub32_set_request_limit() argument
77 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in hubbub32_set_request_limit()
92 void dcn32_program_det_size(struct hubbub *hubbub, int hubp_inst, unsigned int det_buffer_size_in_k… in dcn32_program_det_size() argument
94 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in dcn32_program_det_size()
131 static void dcn32_program_compbuf_size(struct hubbub *hubbub, unsigned int compbuf_size_kb, bool sa… in dcn32_program_compbuf_size() argument
133 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in dcn32_program_compbuf_size()
169 struct hubbub *hubbub, in hubbub32_program_urgent_watermarks() argument
174 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in hubbub32_program_urgent_watermarks()
[all …]
H A Ddcn32_hwseq.c803 if (res_pool->dccg && res_pool->hubbub) { in dcn32_init_hw()
808 (res_pool->hubbub->funcs->get_dchub_ref_freq)(res_pool->hubbub, in dcn32_init_hw()
865 if (dc->res_pool->hubbub->funcs->allow_self_refresh_control) in dcn32_init_hw()
866 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, in dcn32_init_hw()
867 !dc->res_pool->hubbub->ctx->dc->debug.disable_stutter); in dcn32_init_hw()
950 if (!dcb->funcs->is_accelerated_mode(dcb) && dc->res_pool->hubbub->funcs->init_watermarks) in dcn32_init_hw()
951 dc->res_pool->hubbub->funcs->init_watermarks(dc->res_pool->hubbub); in dcn32_init_hw()
960 if (dc->res_pool->hubbub->funcs->force_pstate_change_control) in dcn32_init_hw()
961 dc->res_pool->hubbub->funcs->force_pstate_change_control( in dcn32_init_hw()
962 dc->res_pool->hubbub, false, false); in dcn32_init_hw()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn10/
H A Ddcn10_hubbub.h32 #define TO_DCN10_HUBBUB(hubbub)\ argument
33 container_of(hubbub, struct dcn10_hubbub, base)
397 struct hubbub base;
406 struct hubbub *hubbub,
410 struct hubbub *hubbub);
412 void hubbub1_wm_change_req_wa(struct hubbub *hubbub);
415 struct hubbub *hubbub,
420 void hubbub1_allow_self_refresh_control(struct hubbub *hubbub, bool allow);
422 bool hubbub1_is_allow_self_refresh_enabled(struct hubbub *hubub);
425 struct hubbub *hubbub);
[all …]
H A Ddcn10_hubbub.c42 void hubbub1_wm_read_state(struct hubbub *hubbub, in hubbub1_wm_read_state() argument
45 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_wm_read_state()
91 void hubbub1_allow_self_refresh_control(struct hubbub *hubbub, bool allow) in hubbub1_allow_self_refresh_control() argument
93 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_allow_self_refresh_control()
104 bool hubbub1_is_allow_self_refresh_enabled(struct hubbub *hubbub) in hubbub1_is_allow_self_refresh_enabled() argument
106 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_is_allow_self_refresh_enabled()
117 struct hubbub *hubbub) in hubbub1_verify_allow_pstate_change_high() argument
119 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_verify_allow_pstate_change_high()
234 void hubbub1_wm_change_req_wa(struct hubbub *hubbub) in hubbub1_wm_change_req_wa() argument
236 struct dcn10_hubbub *hubbub1 = TO_DCN10_HUBBUB(hubbub); in hubbub1_wm_change_req_wa()
[all …]
H A Ddcn10_hw_sequencer.c147 dc->res_pool->hubbub->funcs->wm_read_state(dc->res_pool->hubbub, &wm); in dcn10_log_hubbub_state()
816 if (dc->res_pool->hubbub->funcs->is_allow_self_refresh_enabled) in dcn10_bios_golden_init()
818 dc->res_pool->hubbub->funcs->is_allow_self_refresh_enabled(dc->res_pool->hubbub); in dcn10_bios_golden_init()
838 if (dc->res_pool->hubbub->funcs->allow_self_refresh_control) in dcn10_bios_golden_init()
840 dc->res_pool->hubbub->funcs->is_allow_self_refresh_enabled(dc->res_pool->hubbub)) in dcn10_bios_golden_init()
841 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, in dcn10_bios_golden_init()
842 !dc->res_pool->hubbub->ctx->dc->debug.disable_stutter); in dcn10_bios_golden_init()
1118 hubbub1_soft_reset(dc->res_pool->hubbub, true); in dcn10_hw_wa_force_recovery()
1141 hubbub1_soft_reset(dc->res_pool->hubbub, false); in dcn10_hw_wa_force_recovery()
1158 struct hubbub *hubbub = dc->res_pool->hubbub; in dcn10_verify_allow_pstate_change_high() local
[all …]
H A Ddcn10_resource.c692 static struct hubbub *dcn10_hubbub_create(struct dc_context *ctx) in dcn10_hubbub_create()
923 kfree(pool->base.hubbub); in dcn10_resource_destruct()
924 pool->base.hubbub = NULL; in dcn10_resource_destruct()
1121 return dc->res_pool->hubbub->funcs->get_dcc_compression_cap( in dcn10_get_dcc_compression_cap()
1122 dc->res_pool->hubbub, in dcn10_get_dcc_compression_cap()
1641 pool->base.hubbub = dcn10_hubbub_create(ctx); in dcn10_resource_construct()
1642 if (pool->base.hubbub == NULL) { in dcn10_resource_construct()
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn21/
H A Ddcn21_hubbub.h125 void dcn21_dchvm_init(struct hubbub *hubbub);
126 int hubbub21_init_dchub(struct hubbub *hubbub,
129 struct hubbub *hubbub,
134 struct hubbub *hubbub,
139 struct hubbub *hubbub,
144 struct hubbub *hubbub,
149 void hubbub21_wm_read_state(struct hubbub *hubbub,
152 void hubbub21_construct(struct dcn20_hubbub *hubbub,
H A 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()
103 hubbub->riommu_active = true; in dcn21_dchvm_init()
107 int hubbub21_init_dchub(struct hubbub *hubbub, in hubbub21_init_dchub() argument
110 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub21_init_dchub()
136 dcn21_dchvm_init(hubbub); in hubbub21_init_dchub()
142 struct hubbub *hubbub, in hubbub21_program_urgent_watermarks() argument
147 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub21_program_urgent_watermarks()
336 struct hubbub *hubbub, in hubbub21_program_stutter_watermarks() argument
341 struct dcn20_hubbub *hubbub1 = TO_DCN20_HUBBUB(hubbub); in hubbub21_program_stutter_watermarks()
[all …]
H A Ddcn21_resource.c699 if (pool->base.hubbub != NULL) { in dcn21_resource_destruct()
700 kfree(pool->base.hubbub); in dcn21_resource_destruct()
701 pool->base.hubbub = NULL; in dcn21_resource_destruct()
1015 static struct hubbub *dcn21_hubbub_create(struct dc_context *ctx) in dcn21_hubbub_create()
1019 struct dcn20_hubbub *hubbub = kzalloc(sizeof(struct dcn20_hubbub), in dcn21_hubbub_create() local
1022 if (!hubbub) in dcn21_hubbub_create()
1025 hubbub21_construct(hubbub, ctx, in dcn21_hubbub_create()
1031 struct dcn20_vmid *vmid = &hubbub->vmid[i]; in dcn21_hubbub_create()
1039 hubbub->num_vmid = res_cap_rn.num_vmid; in dcn21_hubbub_create()
1041 return &hubbub->base; in dcn21_hubbub_create()
[all …]
H A Ddcn21_hwseq.c83 return dc->res_pool->hubbub->funcs->init_dchub_sys_ctx(dc->res_pool->hubbub, &config); in dcn21_init_sys_ctx()
/openbmc/linux/drivers/gpu/drm/amd/display/dc/dcn31/
H A Ddcn31_hubbub.c51 static void dcn31_init_crb(struct hubbub *hubbub) in dcn31_init_crb() argument
53 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in dcn31_init_crb()
76 static void dcn31_program_det_size(struct hubbub *hubbub, int hubp_inst, unsigned int det_buffer_si… in dcn31_program_det_size() argument
78 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in dcn31_program_det_size()
112 static void dcn31_program_compbuf_size(struct hubbub *hubbub, unsigned int compbuf_size_kb, bool sa… in dcn31_program_compbuf_size() argument
114 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in dcn31_program_compbuf_size()
152 struct hubbub *hubbub, in hubbub31_program_urgent_watermarks() argument
157 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in hubbub31_program_urgent_watermarks()
342 struct hubbub *hubbub, in hubbub31_program_stutter_watermarks() argument
347 struct dcn20_hubbub *hubbub2 = TO_DCN20_HUBBUB(hubbub); in hubbub31_program_stutter_watermarks()
[all …]
H A Ddcn31_hwseq.c135 if (res_pool->dccg && res_pool->hubbub) { in dcn31_init_hw()
141 (res_pool->hubbub->funcs->get_dchub_ref_freq)(res_pool->hubbub, in dcn31_init_hw()
212 if (dc->res_pool->hubbub->funcs->allow_self_refresh_control) in dcn31_init_hw()
213 dc->res_pool->hubbub->funcs->allow_self_refresh_control(dc->res_pool->hubbub, in dcn31_init_hw()
214 !dc->res_pool->hubbub->ctx->dc->debug.disable_stutter); in dcn31_init_hw()
254 if (!dcb->funcs->is_accelerated_mode(dcb) && dc->res_pool->hubbub->funcs->init_watermarks) in dcn31_init_hw()
255 dc->res_pool->hubbub->funcs->init_watermarks(dc->res_pool->hubbub); in dcn31_init_hw()
263 if (dc->res_pool->hubbub->funcs->force_pstate_change_control) in dcn31_init_hw()
264 dc->res_pool->hubbub->funcs->force_pstate_change_control( in dcn31_init_hw()
265 dc->res_pool->hubbub, false, false); in dcn31_init_hw()
[all …]
H A Ddcn31_hubbub.h133 int hubbub31_init_dchub_sys_ctx(struct hubbub *hubbub,
136 void hubbub31_init(struct hubbub *hubbub);

12