File Index
Files and directories
Sign in
FILE

dml21_utils.h

File preview with syntax highlighting.

linux-6.19.14/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/dml21_utils.h C
 1// SPDX-License-Identifier: MIT
 2//
 3// Copyright 2024 Advanced Micro Devices, Inc.
 4
 5
 6#ifndef _DML21_UTILS_H_
 7#define _DML21_UTILS_H_
 8
 9struct dc_state;
10struct dc_plane_state;
11struct pipe_ctx;
12
13struct dml2_context;
14struct dml2_display_rq_regs;
15struct dml2_display_dlg_regs;
16struct dml2_display_ttu_regs;
17
18int dml21_helper_find_dml_pipe_idx_by_stream_id(struct dml2_context *ctx, unsigned int stream_id);
19int dml21_find_dml_pipe_idx_by_plane_id(struct dml2_context *ctx, unsigned int plane_id);
20bool dml21_get_plane_id(const struct dc_state *state, const struct dc_plane_state *plane, unsigned int *plane_id);
21void dml21_pipe_populate_global_sync(struct dml2_context *dml_ctx,
22		struct dc_state *context,
23		struct pipe_ctx *pipe_ctx,
24		struct dml2_per_stream_programming *stream_programming);
25void dml21_populate_mall_allocation_size(struct dc_state *context,
26		struct dml2_context *in_ctx,
27		struct dml2_per_plane_programming *pln_prog,
28		struct pipe_ctx *dc_pipe);
29bool check_dp2p0_output_encoder(const struct pipe_ctx *pipe_ctx);
30void find_valid_pipe_idx_for_stream_index(const struct dml2_context *dml_ctx, unsigned int *dml_pipe_idx, unsigned int stream_index);
31void find_pipe_regs_idx(const struct dml2_context *dml_ctx,
32		struct pipe_ctx *pipe, unsigned int *pipe_regs_idx);
33int dml21_find_dc_pipes_for_plane(const struct dc *in_dc,
34		struct dc_state *context,
35		struct dml2_context *dml_ctx,
36		struct pipe_ctx *dc_main_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__],
37		struct pipe_ctx *dc_phantom_pipes[__DML2_WRAPPER_MAX_STREAMS_PLANES__],
38		int dml_plane_idx);
39void dml21_program_dc_pipe(struct dml2_context *dml_ctx,
40		struct dc_state *context,
41		struct pipe_ctx *pipe_ctx,
42		struct dml2_per_plane_programming *pln_prog,
43		struct dml2_per_stream_programming *stream_prog);
44void dml21_handle_phantom_streams_planes(const struct dc *in_dc, struct dc_state *context, struct dml2_context *dml_ctx);
45unsigned int dml21_get_dc_plane_idx_from_plane_id(unsigned int plane_id);
46void dml21_build_fams2_programming(const struct dc *dc,
47		struct dc_state *context,
48		struct dml2_context *dml_ctx);
49bool dml21_is_plane1_enabled(enum dml2_source_format_class source_format);
50#endif
~/ Read-only file preview.