/linux-6.12.1/drivers/gpu/drm/amd/display/dc/basics/ |
D | dc_common.c | 65 if (pipe_ctx->top_pipe && is_upper_pipe_tree_visible(pipe_ctx->top_pipe)) in is_upper_pipe_tree_visible() 74 if (pipe_ctx->top_pipe && is_upper_pipe_tree_visible(pipe_ctx->top_pipe)) in is_pipe_tree_visible()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dml2/ |
D | dml2_mall_phantom.c | 53 if (pipe->stream && pipe->plane_state && !pipe->top_pipe && !pipe->prev_odm_pipe && in dml2_helper_calculate_num_ways_for_subvp() 122 pipe->top_pipe = NULL; in merge_pipes_for_subvp() 128 } else if (pipe->top_pipe && pipe->top_pipe->plane_state == pipe->plane_state) { in merge_pipes_for_subvp() 129 struct pipe_ctx *top_pipe = pipe->top_pipe; in merge_pipes_for_subvp() local 132 top_pipe->bottom_pipe = bottom_pipe; in merge_pipes_for_subvp() 134 bottom_pipe->top_pipe = top_pipe; in merge_pipes_for_subvp() 136 pipe->top_pipe = NULL; in merge_pipes_for_subvp() 194 if (pipe->stream && !pipe->top_pipe) { in get_num_free_pipes() 255 if (pipe->plane_state && !pipe->top_pipe && in assign_subvp_pipe() 319 if (pipe->stream && !pipe->top_pipe && in enough_pipes_for_subvp() [all …]
|
D | dml2_dc_resource_mgmt.c | 115 if (!state->res_ctx.pipe_ctx[i].prev_odm_pipe && !state->res_ctx.pipe_ctx[i].top_pipe) in find_master_pipe_of_stream() 158 && (!pipe->top_pipe || pipe->top_pipe->plane_state != pipe->plane_state)) { in find_pipes_assigned_to_plane() 563 struct pipe_ctx *top_pipe) in add_plane_to_blend_tree() argument 568 if (top_pipe) in add_plane_to_blend_tree() 569 …top_pipe->bottom_pipe = &state->res_ctx.pipe_ctx[pipe_pool->pipes_assigned_to_plane[odm_slice][i]]; in add_plane_to_blend_tree() 573 state->res_ctx.pipe_ctx[pipe_pool->pipes_assigned_to_plane[odm_slice][i]].top_pipe = top_pipe; in add_plane_to_blend_tree() 576 top_pipe = &state->res_ctx.pipe_ctx[pipe_pool->pipes_assigned_to_plane[odm_slice][i]]; in add_plane_to_blend_tree() 581 return top_pipe; in add_plane_to_blend_tree() 592 …if (pipe->stream && pipe->stream->stream_id == stream_id && !pipe->top_pipe && !pipe->prev_odm_pip… in find_pipes_assigned_to_stream() 725 if (pipe->top_pipe) in remove_pipes_from_blend_trees() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dcn20/ |
D | dcn20_resource.c | 1387 if (pipe_ctx->top_pipe) in dcn20_add_dsc_to_stream_resource() 1418 if (new_ctx->res_ctx.pipe_ctx[i].stream == dc_stream && !new_ctx->res_ctx.pipe_ctx[i].top_pipe) { in remove_dsc_from_stream_resource() 1501 if (prev_odm_pipe->top_pipe && prev_odm_pipe->top_pipe->next_odm_pipe) { in dcn20_split_stream_for_odm() 1502 prev_odm_pipe->top_pipe->next_odm_pipe->bottom_pipe = next_odm_pipe; in dcn20_split_stream_for_odm() 1503 next_odm_pipe->top_pipe = prev_odm_pipe->top_pipe->next_odm_pipe; in dcn20_split_stream_for_odm() 1506 prev_odm_pipe->bottom_pipe->next_odm_pipe->top_pipe = next_odm_pipe; in dcn20_split_stream_for_odm() 1548 if (!next_odm_pipe->top_pipe) in dcn20_split_stream_for_odm() 1551 next_odm_pipe->stream_res.opp = next_odm_pipe->top_pipe->stream_res.opp; in dcn20_split_stream_for_odm() 1552 if (next_odm_pipe->stream->timing.flags.DSC == 1 && !next_odm_pipe->top_pipe) { in dcn20_split_stream_for_odm() 1585 secondary_pipe->bottom_pipe->top_pipe = secondary_pipe; in dcn20_split_stream_for_mpc() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dcn32/ |
D | dcn32_resource_helpers.c | 129 pipe->top_pipe = NULL; in dcn32_merge_pipes_for_subvp() 135 } else if (pipe->top_pipe && pipe->top_pipe->plane_state == pipe->plane_state) { in dcn32_merge_pipes_for_subvp() 136 struct pipe_ctx *top_pipe = pipe->top_pipe; in dcn32_merge_pipes_for_subvp() local 139 top_pipe->bottom_pipe = bottom_pipe; in dcn32_merge_pipes_for_subvp() 141 bottom_pipe->top_pipe = top_pipe; in dcn32_merge_pipes_for_subvp() 143 pipe->top_pipe = NULL; in dcn32_merge_pipes_for_subvp()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/core/ |
D | dc_resource.c | 1588 if (pipe_ctx->top_pipe && pipe_ctx->top_pipe->plane_state == plane_state) { in resource_build_scaling_params() 1881 !pipe_ctx->top_pipe && in resource_is_pipe_type() 1884 return !pipe_ctx->top_pipe && pipe_ctx->stream; in resource_is_pipe_type() 1963 pipe->top_pipe->plane_state != plane) in resource_get_dpp_pipes_for_plane() 1997 while (opp_head->top_pipe) in resource_get_opp_head() 1998 opp_head = opp_head->top_pipe; in resource_get_opp_head() 2009 while (pri_dpp_pipe->top_pipe && in resource_get_primary_dpp_pipe() 2010 pri_dpp_pipe->top_pipe->plane_state == pri_dpp_pipe->plane_state) in resource_get_primary_dpp_pipe() 2011 pri_dpp_pipe = pri_dpp_pipe->top_pipe; in resource_get_primary_dpp_pipe() 2018 struct pipe_ctx *split_pipe = pipe_ctx->top_pipe; in resource_get_mpc_slice_index() [all …]
|
D | dc_hw_sequencer.c | 322 struct pipe_ctx *top_pipe = pipe_ctx; in get_mpctree_visual_confirm_color() local 324 while (top_pipe->top_pipe) in get_mpctree_visual_confirm_color() 325 top_pipe = top_pipe->top_pipe; in get_mpctree_visual_confirm_color() 327 *color = pipe_colors[top_pipe->pipe_idx]; in get_mpctree_visual_confirm_color() 390 while (top_pipe_ctx->top_pipe != NULL) in get_hdr_visual_confirm_color() 391 top_pipe_ctx = top_pipe_ctx->top_pipe; in get_hdr_visual_confirm_color()
|
D | dc_state.c | 153 if (cur_pipe->top_pipe) in dc_state_copy_internal() 154 cur_pipe->top_pipe = &dst_state->res_ctx.pipe_ctx[cur_pipe->top_pipe->pipe_idx]; in dc_state_copy_internal()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dcn30/ |
D | dcn30_resource.c | 1547 if (pri_pipe->top_pipe && pri_pipe->top_pipe->next_odm_pipe) { in dcn30_split_stream_for_mpc_or_odm() 1548 pri_pipe->top_pipe->next_odm_pipe->bottom_pipe = sec_pipe; in dcn30_split_stream_for_mpc_or_odm() 1549 sec_pipe->top_pipe = pri_pipe->top_pipe->next_odm_pipe; in dcn30_split_stream_for_mpc_or_odm() 1552 pri_pipe->bottom_pipe->next_odm_pipe->top_pipe = sec_pipe; in dcn30_split_stream_for_mpc_or_odm() 1558 if (!sec_pipe->top_pipe) in dcn30_split_stream_for_mpc_or_odm() 1561 sec_pipe->stream_res.opp = sec_pipe->top_pipe->stream_res.opp; in dcn30_split_stream_for_mpc_or_odm() 1572 sec_pipe->bottom_pipe->top_pipe = sec_pipe; in dcn30_split_stream_for_mpc_or_odm() 1575 sec_pipe->top_pipe = pri_pipe; in dcn30_split_stream_for_mpc_or_odm() 1598 if (dc->current_state->res_ctx.pipe_ctx[i].top_pipe == NULL in dcn30_find_split_pipe() 1740 pipe->top_pipe = NULL; in dcn30_internal_validate_bw() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dml/dcn32/ |
D | dcn32_fpu.c | 567 if (pipe->stream && !pipe->top_pipe) { in dcn32_get_num_free_pipes() 628 …if (pipe->plane_state && !pipe->top_pipe && !pipe->prev_odm_pipe && !dcn32_is_center_timing(pipe) … in dcn32_assign_subvp_pipe() 742 if (phantom && pipe->stream && pipe->plane_state && !pipe->top_pipe && in subvp_subvp_schedulable() 998 if (pipe->plane_state && !pipe->top_pipe && in subvp_subvp_admissable() 1053 if (pipe->plane_state && !pipe->top_pipe) { in subvp_validate_static_schedulability() 1738 (context->res_ctx.pipe_ctx[i].top_pipe == NULL || in dcn32_calculate_dlg_params() 1739 … context->res_ctx.pipe_ctx[i].plane_state != context->res_ctx.pipe_ctx[i].top_pipe->plane_state) && in dcn32_calculate_dlg_params() 1820 if (dc->current_state->res_ctx.pipe_ctx[i].top_pipe == NULL in dcn32_find_split_pipe() 1896 if (pri_pipe->top_pipe && pri_pipe->top_pipe->next_odm_pipe) { in dcn32_split_stream_for_mpc_or_odm() 1897 pri_pipe->top_pipe->next_odm_pipe->bottom_pipe = sec_pipe; in dcn32_split_stream_for_mpc_or_odm() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn10/ |
D | dcn10_hwseq.c | 115 if (pipe_ctx->top_pipe || in dcn10_lock_all_pipes() 945 for (other_pipe = pipe->top_pipe; other_pipe != NULL; other_pipe = other_pipe->top_pipe) { in calculate_vready_offset_for_group() 974 if (pipe_ctx->top_pipe != NULL) in dcn10_enable_stream_timing() 1107 if (pipe_ctx->top_pipe == NULL) { in dcn10_reset_back_end_for_pipe() 1332 pipe_ctx->top_pipe = NULL; in dcn10_plane_atomic_disable() 1745 if (pipe_ctx_old->top_pipe) in dcn10_reset_hw_ctx_wrap() 1765 bool sec_split = pipe_ctx->top_pipe && in patch_address_for_sbs_tb_stereo() 1766 pipe_ctx->top_pipe->plane_state == pipe_ctx->plane_state; in patch_address_for_sbs_tb_stereo() 1940 if (!pipe || pipe->top_pipe) in dcn10_pipe_control_lock() 2028 if (!pipe || pipe->top_pipe) in dcn10_cursor_lock() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn20/ |
D | dcn20_hwseq.c | 725 pipe_ctx->top_pipe = NULL; in dcn20_plane_atomic_disable() 847 if (pipe_ctx->top_pipe != NULL) in dcn20_enable_stream_timing() 1029 if (pipe_ctx->top_pipe == NULL in dcn20_set_output_transfer_func() 1359 if (!pipe_ctx->top_pipe in dcn20_enable_plane() 1381 if (!pipe || pipe->top_pipe) in dcn20_pipe_control_lock() 1513 if (!new_pipe->top_pipe && !new_pipe->prev_odm_pipe) { in dcn20_detect_pipe_changes() 1849 for (other_pipe = pipe->top_pipe; other_pipe != NULL; other_pipe = other_pipe->top_pipe) { in calculate_vready_offset_for_group() 1883 if (pipe_ctx->update_flags.bits.global_sync && !pipe_ctx->top_pipe in dcn20_program_pipe() 2026 if (!pipe->top_pipe && !pipe->prev_odm_pipe && pipe->plane_state) { in dcn20_program_front_end_for_ctx() 2083 && !context->res_ctx.pipe_ctx[i].top_pipe in dcn20_program_front_end_for_ctx() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/link/ |
D | link_resource.c | 42 if (pipe->stream && pipe->stream->link && pipe->top_pipe == NULL) { in link_get_cur_link_res()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn401/ |
D | dcn401_hwseq.c | 117 if (pipe_ctx->top_pipe == NULL) { in dcn401_program_gamut_remap() 1055 for (test_pipe = pipe_ctx->top_pipe; test_pipe; in dcn401_can_pipe_disable_cursor() 1056 test_pipe = test_pipe->top_pipe) { in dcn401_can_pipe_disable_cursor() 1072 for (split_pipe = pipe_ctx->top_pipe; split_pipe; in dcn401_can_pipe_disable_cursor() 1073 split_pipe = split_pipe->top_pipe) in dcn401_can_pipe_disable_cursor() 1129 if ((pipe_ctx->top_pipe != NULL) || (pipe_ctx->bottom_pipe != NULL)) { in dcn401_set_cursor_position() 1212 pipe_ctx->top_pipe && in dcn401_set_cursor_position() 1213 (pipe_ctx == pipe_ctx->top_pipe->bottom_pipe)) { in dcn401_set_cursor_position() 1373 const struct pipe_ctx *top_pipe) in dcn401_wait_for_dcc_meta_propagation() argument 1376 const struct pipe_ctx *pipe_ctx = top_pipe; in dcn401_wait_for_dcc_meta_propagation()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dml/calcs/ |
D | dcn_calcs.c | 312 } else if (pipe->top_pipe != NULL && pipe->top_pipe->plane_state == pipe->plane_state) { in pipe_ctx_to_e2e_pipe_params() 545 secondary_pipe->bottom_pipe->top_pipe = secondary_pipe; in split_stream_across_pipes() 548 secondary_pipe->top_pipe = primary_pipe; in split_stream_across_pipes() 899 if (pipe->top_pipe && pipe->top_pipe->plane_state == pipe->plane_state) in dcn_validate_bandwidth() 1206 if (pipe->top_pipe && pipe->top_pipe->plane_state == pipe->plane_state) in dcn_validate_bandwidth() 1271 hsplit_pipe->bottom_pipe->top_pipe = pipe; in dcn_validate_bandwidth() 1274 hsplit_pipe->top_pipe = NULL; in dcn_validate_bandwidth()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn201/ |
D | dcn201_hwseq.c | 60 bool sec_split = pipe_ctx->top_pipe && in patch_address_for_sbs_tb_stereo() 61 pipe_ctx->top_pipe->plane_state == pipe_ctx->plane_state; in patch_address_for_sbs_tb_stereo() 534 if (pipe->top_pipe) in dcn201_pipe_control_lock()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dml/dcn20/ |
D | dcn20_fpu.c | 1426 if (res_ctx->pipe_ctx[i].top_pipe && res_ctx->pipe_ctx[i].top_pipe->plane_state in dcn20_populate_dml_pipes_from_context() 1428 struct pipe_ctx *first_pipe = res_ctx->pipe_ctx[i].top_pipe; in dcn20_populate_dml_pipes_from_context() 1431 while (first_pipe->top_pipe && first_pipe->top_pipe->plane_state in dcn20_populate_dml_pipes_from_context() 1433 first_pipe = first_pipe->top_pipe; in dcn20_populate_dml_pipes_from_context() 1442 pipes[pipe_cnt].pipe.src.hsplit_grp = res_ctx->pipe_ctx[i].top_pipe->pipe_idx; in dcn20_populate_dml_pipes_from_context() 1594 || (res_ctx->pipe_ctx[i].top_pipe && res_ctx->pipe_ctx[i].top_pipe->plane_state == pln) in dcn20_populate_dml_pipes_from_context() 1663 split_pipe = res_ctx->pipe_ctx[i].top_pipe; in dcn20_populate_dml_pipes_from_context() 1666 split_pipe = split_pipe->top_pipe; in dcn20_populate_dml_pipes_from_context()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn314/ |
D | dcn314_hwseq.c | 371 if (pipe->top_pipe || pipe->prev_odm_pipe) in dcn314_resync_fifo_dccg_dio() 445 if (pipe_ctx->stream && pipe_ctx->stream->link == link && pipe_ctx->top_pipe == NULL) { in apply_symclk_on_tx_off_wa()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/ |
D | dc_dmub_srv.c | 417 …if (split_pipe->stream == head_pipe->stream && (split_pipe->top_pipe || split_pipe->prev_odm_pipe)… in dc_dmub_srv_populate_fams_pipe_info() 1006 for (test_pipe = pipe_ctx->top_pipe; test_pipe; in dc_can_pipe_disable_cursor() 1007 test_pipe = test_pipe->top_pipe) { in dc_can_pipe_disable_cursor() 1021 for (split_pipe = pipe_ctx->top_pipe; split_pipe; in dc_can_pipe_disable_cursor() 1022 split_pipe = split_pipe->top_pipe) in dc_can_pipe_disable_cursor()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn31/ |
D | dcn31_hwseq.c | 516 ASSERT(!pipe_ctx->top_pipe); in dcn31_reset_back_end_for_pipe() 583 if (pipe_ctx_old->top_pipe || pipe_ctx_old->prev_odm_pipe) in dcn31_reset_hw_ctx_wrap()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dml2/dml21/ |
D | dml21_utils.c | 258 (dc_pipe->top_pipe == NULL || in dml21_populate_mall_allocation_size() 259 dc_pipe->plane_state != dc_pipe->top_pipe->plane_state) && in dml21_populate_mall_allocation_size()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/clk_mgr/dce100/ |
D | dce_clk_mgr.c | 177 if (pipe_ctx->top_pipe) in dce_get_max_pixel_clock_for_all_paths()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dce110/ |
D | dce110_hwseq.c | 2267 if (!pipe_ctx_old->stream || pipe_ctx_old->top_pipe) in dce110_reset_hw_ctx_wrap() 2351 if (pipe_ctx->top_pipe) in dce110_setup_audio_dto() 2389 if (pipe_ctx->top_pipe) in dce110_setup_audio_dto() 2443 if (pipe_ctx->stream == NULL || pipe_ctx->top_pipe) in dce110_apply_ctx_to_hw() 2483 if (pipe_ctx->top_pipe || pipe_ctx->prev_odm_pipe) in dce110_apply_ctx_to_hw() 3115 if (pipe_ctx->top_pipe && pipe_ctx->plane_state != pipe_ctx->top_pipe->plane_state) in dce110_set_cursor_position()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/inc/ |
D | core_types.h | 449 struct pipe_ctx *top_pipe; member
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dcn21/ |
D | dcn21_resource.c | 855 …if (!pipe->top_pipe && !pipe->plane_state && context->bw_ctx.dml.vba.ODMCombineEnabled[pipe_idx]) { in dcn21_fast_validate_bw() 869 if (pipe->top_pipe && pipe->plane_state == pipe->top_pipe->plane_state) in dcn21_fast_validate_bw()
|