/linux/drivers/gpu/drm/amd/display/dc/dml2/dml21/ |
H A D | dml21_wrapper.h | 15 struct dml2_context; 29 bool dml21_create(const struct dc *in_dc, struct dml2_context **dml_ctx, const struct dml2_configur… 30 void dml21_destroy(struct dml2_context *dml2); 31 void dml21_copy(struct dml2_context *dst_dml_ctx, 32 struct dml2_context *src_dml_ctx); 33 bool dml21_create_copy(struct dml2_context **dst_dml_ctx, 34 struct dml2_context *src_dml_ctx); 35 void dml21_reinit(const struct dc *in_dc, struct dml2_context **dml_ctx, const struct dml2_configur… 58 bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx,… 61 …epare_mcache_programming(struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx);
|
H A D | dml21_utils.h | 13 struct dml2_context; 18 int dml21_helper_find_dml_pipe_idx_by_stream_id(struct dml2_context *ctx, unsigned int stream_id); 19 int dml21_find_dml_pipe_idx_by_plane_id(struct dml2_context *ctx, unsigned int plane_id); 26 struct dml2_context *in_ctx, 30 void find_valid_pipe_idx_for_stream_index(const struct dml2_context *dml_ctx, unsigned int *dml_pip… 31 void find_pipe_regs_idx(const struct dml2_context *dml_ctx, 35 struct dml2_context *dml_ctx, 39 void dml21_program_dc_pipe(struct dml2_context *dml_ctx, 44 …tom_streams_planes(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx); 48 struct dml2_context *dml_ctx);
|
H A D | dml21_translation_helper.h | 15 struct dml2_context; 22 …to_dml_display_cfg(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx); 23 void dml21_copy_clocks_to_dc_state(struct dml2_context *in_ctx, struct dc_state *context); 24 void dml21_populate_pipe_ctx_dlg_params(struct dml2_context *dml_ctx, struct dc_state *context, str… 25 …arks *watermark, enum dml2_dchub_watermark_reg_set_index reg_set_idx, struct dml2_context *in_ctx); 26 …ark_sets(const struct dc *in_dc, union dcn_watermark_set *watermarks, struct dml2_context *in_ctx); 27 void dml21_map_hw_resources(struct dml2_context *dml_ctx);
|
H A D | dml21_wrapper.c | 14 static bool dml21_allocate_memory(struct dml2_context **dml_ctx) in dml21_allocate_memory() 16 *dml_ctx = (struct dml2_context *)kzalloc(sizeof(struct dml2_context), GFP_KERNEL); in dml21_allocate_memory() 37 static void dml21_apply_debug_options(const struct dc *in_dc, struct dml2_context *dml_ctx, const s… in dml21_apply_debug_options() 74 static void dml21_init(const struct dc *in_dc, struct dml2_context **dml_ctx, const struct dml2_con… in dml21_init() 102 bool dml21_create(const struct dc *in_dc, struct dml2_context **dml_ctx, const struct dml2_configur… in dml21_create() 113 void dml21_destroy(struct dml2_context *dml2) in dml21_destroy() 120 struct dml2_context *in_ctx, unsigned int pipe_cnt) in dml21_calculate_rq_and_dlg_params() 193 …eck_and_programming(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) in dml21_mode_check_and_programming() 249 …_check_mode_support(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) in dml21_check_mode_support() 276 bool dml21_validate(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx,… in dml21_validate() [all …]
|
H A D | dml21_utils.c | 14 int dml21_helper_find_dml_pipe_idx_by_stream_id(struct dml2_context *ctx, unsigned int stream_id) in dml21_helper_find_dml_pipe_idx_by_stream_id() 25 int dml21_find_dml_pipe_idx_by_plane_id(struct dml2_context *ctx, unsigned int plane_id) in dml21_find_dml_pipe_idx_by_plane_id() 60 void find_valid_pipe_idx_for_stream_index(const struct dml2_context *dml_ctx, unsigned int *dml_pip… in find_valid_pipe_idx_for_stream_index() 72 void find_pipe_regs_idx(const struct dml2_context *dml_ctx, in find_pipe_regs_idx() 86 struct dml2_context *dml_ctx, in dml21_find_dc_pipes_for_plane() 250 struct dml2_context *in_ctx, in dml21_populate_mall_allocation_size() 299 void dml21_program_dc_pipe(struct dml2_context *dml_ctx, struct dc_state *context, struct pipe_ctx … in dml21_program_dc_pipe() 341 static struct dc_stream_state *dml21_add_phantom_stream(struct dml2_context *dml_ctx, in dml21_add_phantom_stream() 378 static struct dc_plane_state *dml21_add_phantom_plane(struct dml2_context *dml_ctx, in dml21_add_phantom_plane() 420 …phantom_streams_planes(const struct dc *dc, struct dc_state *context, struct dml2_context *dml_ctx) in dml21_handle_phantom_streams_planes() [all …]
|
H A D | dml21_translation_helper.c | 344 struct dml2_context *dml_ctx) in populate_dml21_timing_config_from_stream_state() 695 struct dml2_context *dml_ctx, in get_scaler_data_for_plane() 721 static void populate_dml21_plane_config_from_plane_state(struct dml2_context *dml_ctx, in populate_dml21_plane_config_from_plane_state() 886 static unsigned int map_stream_to_dml21_display_cfg(const struct dml2_context *dml_ctx, const struc… in map_stream_to_dml21_display_cfg() 901 static unsigned int map_plane_to_dml21_display_cfg(const struct dml2_context *dml_ctx, in map_plane_to_dml21_display_cfg() 948 …nto_dml_display_cfg(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx) in dml21_map_dc_state_into_dml_display_cfg() 1025 void dml21_copy_clocks_to_dc_state(struct dml2_context *in_ctx, struct dc_state *context) in dml21_copy_clocks_to_dc_state() 1041 …marks *watermark, enum dml2_dchub_watermark_reg_set_index reg_set_idx, struct dml2_context *in_ctx) in dml21_extract_legacy_watermark_set() 1089 …mark_sets(const struct dc *in_dc, union dcn_watermark_set *watermarks, struct dml2_context *in_ctx) in dml21_extract_watermark_sets() 1107 void dml21_populate_pipe_ctx_dlg_params(struct dml2_context *dml_ctx, struct dc_state *context, str… in dml21_populate_pipe_ctx_dlg_params() [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/dml2/ |
H A D | dml2_mall_phantom.h | 40 struct dml2_context; 42 unsigned int dml2_helper_calculate_num_ways_for_subvp(struct dml2_context *ctx, struct dc_state *co… 44 bool dml2_svp_add_phantom_pipe_to_dc_state(struct dml2_context *ctx, struct dc_state *state, struct… 46 bool dml2_svp_remove_all_phantom_pipes(struct dml2_context *ctx, struct dc_state *state); 48 bool dml2_svp_validate_static_schedulability(struct dml2_context *ctx, struct dc_state *context, en… 50 bool dml2_svp_drr_schedulable(struct dml2_context *ctx, struct dc_state *context, struct dc_crtc_ti…
|
H A D | dml2_wrapper.h | 34 struct dml2_context; 257 struct dml2_context **dml2); 259 void dml2_destroy(struct dml2_context *dml2); 260 void dml2_copy(struct dml2_context *dst_dml2, 261 struct dml2_context *src_dml2); 262 bool dml2_create_copy(struct dml2_context **dst_dml2, 263 struct dml2_context *src_dml2); 266 struct dml2_context **dml2); 294 struct dml2_context *dml2, 303 void dml2_extract_dram_and_fclk_change_support(struct dml2_context *dml2, [all …]
|
H A D | dml2_utils.h | 44 int dml2_helper_find_dml_pipe_idx_by_stream_id(struct dml2_context *ctx, unsigned int stream_id); 122 … dc_state *context, struct resource_context *out_new_hw_state, struct dml2_context *in_ctx, unsign… 131 void dml2_apply_det_buffer_allocation_policy(struct dml2_context *in_ctx, struct dml_display_cfg_st… 141 bool dml2_verify_det_buffer_configuration(struct dml2_context *in_ctx, struct dc_state *display_sta… 148 void dml2_initialize_det_scratch(struct dml2_context *in_ctx);
|
H A D | dml2_wrapper.c | 37 static void initialize_dml2_ip_params(struct dml2_context *dml2, const struct dc *in_dc, struct ip_… in initialize_dml2_ip_params() 45 static void initialize_dml2_soc_bbox(struct dml2_context *dml2, const struct dc *in_dc, struct soc_… in initialize_dml2_soc_bbox() 53 static void initialize_dml2_soc_states(struct dml2_context *dml2, in initialize_dml2_soc_states() 62 static void map_hw_resources(struct dml2_context *dml2, in map_hw_resources() 94 static unsigned int pack_and_call_dml_mode_support_ex(struct dml2_context *dml2, in pack_and_call_dml_mode_support_ex() 110 static bool optimize_configuration(struct dml2_context *dml2, struct dml2_wrapper_optimize_configur… in optimize_configuration() 229 static int calculate_lowest_supported_state_for_temp_read(struct dml2_context *dml2, struct dc_stat… in calculate_lowest_supported_state_for_temp_read() 322 static bool does_configuration_meet_sw_policies(struct dml2_context *ctx, const struct dml_display_… in does_configuration_meet_sw_policies() 335 static bool dml_mode_support_wrapper(struct dml2_context *dml2, in dml_mode_support_wrapper() 437 static bool optimize_pstate_with_svp_and_drr(struct dml2_context *dml2, struct dc_state *display_st… in optimize_pstate_with_svp_and_drr() [all …]
|
H A D | dml2_translation_helper.h | 30 void dml2_init_ip_params(struct dml2_context *dml2, const struct dc *in_dc, struct ip_params_st *ou… 31 void dml2_init_socbb_params(struct dml2_context *dml2, const struct dc *in_dc, struct soc_bounding_… 32 void dml2_init_soc_states(struct dml2_context *dml2, const struct dc *in_dc, 37 void map_dc_state_into_dml_display_cfg(struct dml2_context *dml2, struct dc_state *context, struct …
|
H A D | dml2_dc_resource_mgmt.c | 58 static bool get_plane_id(struct dml2_context *dml2, const struct dc_state *state, const struct dc_p… in get_plane_id() 109 static struct pipe_ctx *find_master_pipe_of_stream(struct dml2_context *ctx, struct dc_state *state… in find_master_pipe_of_stream() 123 static struct pipe_ctx *find_master_pipe_of_plane(struct dml2_context *ctx, in find_master_pipe_of_plane() 141 static unsigned int find_pipes_assigned_to_plane(struct dml2_context *ctx, in find_pipes_assigned_to_plane() 179 static bool validate_pipe_assignment(const struct dml2_context *ctx, const struct dc_state *state, … in validate_pipe_assignment() 319 static bool find_more_pipes_for_stream(struct dml2_context *ctx, in find_more_pipes_for_stream() 385 static bool find_more_free_pipes(struct dml2_context *ctx, in find_more_free_pipes() 534 static void add_odm_slice_to_odm_tree(struct dml2_context *ctx, in add_odm_slice_to_odm_tree() 558 static struct pipe_ctx *add_plane_to_blend_tree(struct dml2_context *ctx, in add_plane_to_blend_tree() 584 static unsigned int find_pipes_assigned_to_stream(struct dml2_context *ctx, struct dc_state *state,… in find_pipes_assigned_to_stream() [all …]
|
H A D | dml2_mall_phantom.c | 32 unsigned int dml2_helper_calculate_num_ways_for_subvp(struct dml2_context *ctx, struct dc_state *co… in dml2_helper_calculate_num_ways_for_subvp() 101 static void merge_pipes_for_subvp(struct dml2_context *ctx, struct dc_state *context) in merge_pipes_for_subvp() 146 static bool all_pipes_have_stream_and_plane(struct dml2_context *ctx, const struct dc_state *contex… in all_pipes_have_stream_and_plane() 185 static unsigned int get_num_free_pipes(struct dml2_context *ctx, struct dc_state *state) in get_num_free_pipes() 228 static bool assign_subvp_pipe(struct dml2_context *ctx, struct dc_state *context, unsigned int *ind… in assign_subvp_pipe() 309 static bool enough_pipes_for_subvp(struct dml2_context *ctx, struct dc_state *state) in enough_pipes_for_subvp() 357 static bool subvp_subvp_schedulable(struct dml2_context *ctx, struct dc_state *context) in subvp_subvp_schedulable() 431 bool dml2_svp_drr_schedulable(struct dml2_context *ctx, struct dc_state *context, struct dc_crtc_ti… in dml2_svp_drr_schedulable() 507 static bool subvp_vblank_schedulable(struct dml2_context *ctx, struct dc_state *context) in subvp_vblank_schedulable() 601 bool dml2_svp_validate_static_schedulability(struct dml2_context *ctx, struct dc_state *context, en… in dml2_svp_validate_static_schedulability() [all …]
|
H A D | dml2_dc_resource_mgmt.h | 32 struct dml2_context; 50 bool dml2_map_dc_pipes(struct dml2_context *ctx, struct dc_state *state, const struct dml_display_c…
|
H A D | dml2_utils.c | 194 int dml2_helper_find_dml_pipe_idx_by_stream_id(struct dml2_context *ctx, unsigned int stream_id) in dml2_helper_find_dml_pipe_idx_by_stream_id() 205 static int find_dml_pipe_idx_by_plane_id(struct dml2_context *ctx, unsigned int plane_id) in find_dml_pipe_idx_by_plane_id() 216 static bool get_plane_id(struct dml2_context *dml2, const struct dc_state *state, const struct dc_p… in get_plane_id() 279 … dc_state *context, struct resource_context *out_new_hw_state, struct dml2_context *in_ctx, unsign… in dml2_calculate_rq_and_dlg_params() 456 void dml2_initialize_det_scratch(struct dml2_context *in_ctx) in dml2_initialize_det_scratch() 465 static unsigned int find_planes_per_stream_and_stream_count(struct dml2_context *in_ctx, struct dml… in find_planes_per_stream_and_stream_count() 482 void dml2_apply_det_buffer_allocation_policy(struct dml2_context *in_ctx, struct dml_display_cfg_st… in dml2_apply_det_buffer_allocation_policy() 511 bool dml2_verify_det_buffer_configuration(struct dml2_context *in_ctx, struct dc_state *display_sta… in dml2_verify_det_buffer_configuration()
|
H A D | dml2_internal_types.h | 135 struct dml2_context { struct
|
H A D | dml2_translation_helper.c | 34 void dml2_init_ip_params(struct dml2_context *dml2, const struct dc *in_dc, struct ip_params_st *ou… in dml2_init_ip_params() 244 void dml2_init_socbb_params(struct dml2_context *dml2, const struct dc *in_dc, struct soc_bounding_… in dml2_init_socbb_params() 325 void dml2_init_soc_states(struct dml2_context *dml2, const struct dc *in_dc, in dml2_init_soc_states() 736 const struct dc_stream_state *in, const struct pipe_ctx *pipe, struct dml2_context *dml2) in populate_dml_output_cfg_from_stream_state() 1089 static unsigned int map_stream_to_dml_display_cfg(const struct dml2_context *dml2, in map_stream_to_dml_display_cfg() 1105 static bool get_plane_id(struct dml2_context *dml2, const struct dc_state *context, const struct dc… in get_plane_id() 1129 static unsigned int map_plane_to_dml_display_cfg(const struct dml2_context *dml2, const struct dc_p… in map_plane_to_dml_display_cfg() 1151 static void apply_legacy_svp_drr_settings(struct dml2_context *dml2, const struct dc_state *state, … in apply_legacy_svp_drr_settings() 1167 static void dml2_populate_pipe_to_plane_index_mapping(struct dml2_context *dml2, struct dc_state *s… in dml2_populate_pipe_to_plane_index_mapping() 1242 static void dml2_map_hpo_stream_encoder_to_hpo_link_encoder_index(struct dml2_context *dml2, struct… in dml2_map_hpo_stream_encoder_to_hpo_link_encoder_index() [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/inc/ |
H A D | core_types.h | 550 struct dml2_context *dml2; 551 struct dml2_context *dml2_dc_power_source;
|
/linux/drivers/gpu/drm/amd/display/dc/core/ |
H A D | dc_state.c | 236 struct dml2_context *dst_dml2 = dst_state->bw_ctx.dml2; in dc_state_copy() 237 struct dml2_context *dst_dml2_dc_power_source = dst_state->bw_ctx.dml2_dc_power_source; in dc_state_copy()
|