mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-03 18:12:25 -04:00
drm/amd/display: Update dc_tiling_info union to structure
[WHY] The `dc_tiling_info` union previously did not have a field to specify the active GFX format, assuming only one format would be used per DCN version. from DCN4+, support for switching between different GFX formats is introduced, requiring a way to track which format is currently in use. [HOW] Updated the `dc_tiling_info` union to include a new field that explicitly indicates the currently used GFX format. This allows the system to determine the active GFX format and take the correct programming path accordingly. [Description] The union `dc_tiling_info` has been updated to support multiple GFX formats by adding a new field for identifying the active format. This update ensures that the correct programming path is followed based on the selected format. All references to `dc_tiling_info` in the codebase have been updated to reflect the new structure. Reviewed-by: Alvin Lee <alvin.lee2@amd.com> Signed-off-by: Karthi Kandasamy <karthi.kandasamy@amd.com> Signed-off-by: Roman Li <roman.li@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
e8b19ffea9
commit
080950cbdd
@@ -177,7 +177,7 @@ static unsigned int amdgpu_dm_plane_modifier_gfx9_swizzle_mode(uint64_t modifier
|
||||
return AMD_FMT_MOD_GET(TILE, modifier);
|
||||
}
|
||||
|
||||
static void amdgpu_dm_plane_fill_gfx8_tiling_info_from_flags(union dc_tiling_info *tiling_info,
|
||||
static void amdgpu_dm_plane_fill_gfx8_tiling_info_from_flags(struct dc_tiling_info *tiling_info,
|
||||
uint64_t tiling_flags)
|
||||
{
|
||||
/* Fill GFX8 params */
|
||||
@@ -210,7 +210,7 @@ static void amdgpu_dm_plane_fill_gfx8_tiling_info_from_flags(union dc_tiling_inf
|
||||
}
|
||||
|
||||
static void amdgpu_dm_plane_fill_gfx9_tiling_info_from_device(const struct amdgpu_device *adev,
|
||||
union dc_tiling_info *tiling_info)
|
||||
struct dc_tiling_info *tiling_info)
|
||||
{
|
||||
/* Fill GFX9 params */
|
||||
tiling_info->gfx9.num_pipes =
|
||||
@@ -231,7 +231,7 @@ static void amdgpu_dm_plane_fill_gfx9_tiling_info_from_device(const struct amdgp
|
||||
}
|
||||
|
||||
static void amdgpu_dm_plane_fill_gfx9_tiling_info_from_modifier(const struct amdgpu_device *adev,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
uint64_t modifier)
|
||||
{
|
||||
unsigned int mod_bank_xor_bits = AMD_FMT_MOD_GET(BANK_XOR_BITS, modifier);
|
||||
@@ -261,7 +261,7 @@ static void amdgpu_dm_plane_fill_gfx9_tiling_info_from_modifier(const struct amd
|
||||
static int amdgpu_dm_plane_validate_dcc(struct amdgpu_device *adev,
|
||||
const enum surface_pixel_format format,
|
||||
const enum dc_rotation_angle rotation,
|
||||
const union dc_tiling_info *tiling_info,
|
||||
const struct dc_tiling_info *tiling_info,
|
||||
const struct dc_plane_dcc_param *dcc,
|
||||
const struct dc_plane_address *address,
|
||||
const struct plane_size *plane_size)
|
||||
@@ -308,7 +308,7 @@ static int amdgpu_dm_plane_fill_gfx9_plane_attributes_from_modifiers(struct amdg
|
||||
const enum surface_pixel_format format,
|
||||
const enum dc_rotation_angle rotation,
|
||||
const struct plane_size *plane_size,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
struct dc_plane_address *address)
|
||||
{
|
||||
@@ -358,7 +358,7 @@ static int amdgpu_dm_plane_fill_gfx12_plane_attributes_from_modifiers(struct amd
|
||||
const enum surface_pixel_format format,
|
||||
const enum dc_rotation_angle rotation,
|
||||
const struct plane_size *plane_size,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
struct dc_plane_address *address)
|
||||
{
|
||||
@@ -834,7 +834,7 @@ int amdgpu_dm_plane_fill_plane_buffer_attributes(struct amdgpu_device *adev,
|
||||
const enum surface_pixel_format format,
|
||||
const enum dc_rotation_angle rotation,
|
||||
const uint64_t tiling_flags,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
struct dc_plane_address *address,
|
||||
|
||||
@@ -47,7 +47,7 @@ int amdgpu_dm_plane_fill_plane_buffer_attributes(struct amdgpu_device *adev,
|
||||
const enum surface_pixel_format format,
|
||||
const enum dc_rotation_angle rotation,
|
||||
const uint64_t tiling_flags,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
struct dc_plane_address *address,
|
||||
|
||||
@@ -2555,7 +2555,7 @@ static enum surface_update_type get_plane_info_update_type(const struct dc *dc,
|
||||
|
||||
|
||||
if (memcmp(&u->plane_info->tiling_info, &u->surface->tiling_info,
|
||||
sizeof(union dc_tiling_info)) != 0) {
|
||||
sizeof(struct dc_tiling_info)) != 0) {
|
||||
update_flags->bits.swizzle_change = 1;
|
||||
elevate_update_type(&update_type, UPDATE_TYPE_MED);
|
||||
|
||||
|
||||
@@ -1306,7 +1306,7 @@ struct dc_plane_state {
|
||||
struct rect clip_rect;
|
||||
|
||||
struct plane_size plane_size;
|
||||
union dc_tiling_info tiling_info;
|
||||
struct dc_tiling_info tiling_info;
|
||||
|
||||
struct dc_plane_dcc_param dcc;
|
||||
|
||||
@@ -1377,7 +1377,7 @@ struct dc_plane_state {
|
||||
|
||||
struct dc_plane_info {
|
||||
struct plane_size plane_size;
|
||||
union dc_tiling_info tiling_info;
|
||||
struct dc_tiling_info tiling_info;
|
||||
struct dc_plane_dcc_param dcc;
|
||||
enum surface_pixel_format format;
|
||||
enum dc_rotation_angle rotation;
|
||||
|
||||
@@ -341,89 +341,101 @@ enum swizzle_mode_addr3_values {
|
||||
DC_ADDR3_SW_UNKNOWN = DC_ADDR3_SW_MAX
|
||||
};
|
||||
|
||||
union dc_tiling_info {
|
||||
enum dc_gfxversion {
|
||||
DcGfxVersion7 = 0,
|
||||
DcGfxVersion8,
|
||||
DcGfxVersion9,
|
||||
DcGfxVersion10,
|
||||
DcGfxVersion11,
|
||||
DcGfxAddr3,
|
||||
DcGfxVersionUnknown
|
||||
};
|
||||
|
||||
struct {
|
||||
/* Specifies the number of memory banks for tiling
|
||||
* purposes.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* POSSIBLE VALUES: 2,4,8,16
|
||||
*/
|
||||
unsigned int num_banks;
|
||||
/* Specifies the number of tiles in the x direction
|
||||
* to be incorporated into the same bank.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* POSSIBLE VALUES: 1,2,4,8
|
||||
*/
|
||||
unsigned int bank_width;
|
||||
unsigned int bank_width_c;
|
||||
/* Specifies the number of tiles in the y direction to
|
||||
* be incorporated into the same bank.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* POSSIBLE VALUES: 1,2,4,8
|
||||
*/
|
||||
unsigned int bank_height;
|
||||
unsigned int bank_height_c;
|
||||
/* Specifies the macro tile aspect ratio. Only applies
|
||||
* to 2D and 3D tiling modes.
|
||||
*/
|
||||
unsigned int tile_aspect;
|
||||
unsigned int tile_aspect_c;
|
||||
/* Specifies the number of bytes that will be stored
|
||||
* contiguously for each tile.
|
||||
* If the tile data requires more storage than this
|
||||
* amount, it is split into multiple slices.
|
||||
* This field must not be larger than
|
||||
* GB_ADDR_CONFIG.DRAM_ROW_SIZE.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* For color render targets, TILE_SPLIT >= 256B.
|
||||
*/
|
||||
enum tile_split_values tile_split;
|
||||
enum tile_split_values tile_split_c;
|
||||
/* Specifies the addressing within a tile.
|
||||
* 0x0 - DISPLAY_MICRO_TILING
|
||||
* 0x1 - THIN_MICRO_TILING
|
||||
* 0x2 - DEPTH_MICRO_TILING
|
||||
* 0x3 - ROTATED_MICRO_TILING
|
||||
*/
|
||||
enum tile_mode_values tile_mode;
|
||||
enum tile_mode_values tile_mode_c;
|
||||
/* Specifies the number of pipes and how they are
|
||||
* interleaved in the surface.
|
||||
* Refer to memory addressing document for complete
|
||||
* details and constraints.
|
||||
*/
|
||||
unsigned int pipe_config;
|
||||
/* Specifies the tiling mode of the surface.
|
||||
* THIN tiles use an 8x8x1 tile size.
|
||||
* THICK tiles use an 8x8x4 tile size.
|
||||
* 2D tiling modes rotate banks for successive Z slices
|
||||
* 3D tiling modes rotate pipes and banks for Z slices
|
||||
* Refer to memory addressing document for complete
|
||||
* details and constraints.
|
||||
*/
|
||||
enum array_mode_values array_mode;
|
||||
} gfx8;
|
||||
struct dc_tiling_info {
|
||||
unsigned int gfxversion; // Specifies which part of the union to use. Must use DalGfxVersion enum
|
||||
union {
|
||||
struct {
|
||||
/* Specifies the number of memory banks for tiling
|
||||
* purposes.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* POSSIBLE VALUES: 2,4,8,16
|
||||
*/
|
||||
unsigned int num_banks;
|
||||
/* Specifies the number of tiles in the x direction
|
||||
* to be incorporated into the same bank.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* POSSIBLE VALUES: 1,2,4,8
|
||||
*/
|
||||
unsigned int bank_width;
|
||||
unsigned int bank_width_c;
|
||||
/* Specifies the number of tiles in the y direction to
|
||||
* be incorporated into the same bank.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* POSSIBLE VALUES: 1,2,4,8
|
||||
*/
|
||||
unsigned int bank_height;
|
||||
unsigned int bank_height_c;
|
||||
/* Specifies the macro tile aspect ratio. Only applies
|
||||
* to 2D and 3D tiling modes.
|
||||
*/
|
||||
unsigned int tile_aspect;
|
||||
unsigned int tile_aspect_c;
|
||||
/* Specifies the number of bytes that will be stored
|
||||
* contiguously for each tile.
|
||||
* If the tile data requires more storage than this
|
||||
* amount, it is split into multiple slices.
|
||||
* This field must not be larger than
|
||||
* GB_ADDR_CONFIG.DRAM_ROW_SIZE.
|
||||
* Only applies to 2D and 3D tiling modes.
|
||||
* For color render targets, TILE_SPLIT >= 256B.
|
||||
*/
|
||||
enum tile_split_values tile_split;
|
||||
enum tile_split_values tile_split_c;
|
||||
/* Specifies the addressing within a tile.
|
||||
* 0x0 - DISPLAY_MICRO_TILING
|
||||
* 0x1 - THIN_MICRO_TILING
|
||||
* 0x2 - DEPTH_MICRO_TILING
|
||||
* 0x3 - ROTATED_MICRO_TILING
|
||||
*/
|
||||
enum tile_mode_values tile_mode;
|
||||
enum tile_mode_values tile_mode_c;
|
||||
/* Specifies the number of pipes and how they are
|
||||
* interleaved in the surface.
|
||||
* Refer to memory addressing document for complete
|
||||
* details and constraints.
|
||||
*/
|
||||
unsigned int pipe_config;
|
||||
/* Specifies the tiling mode of the surface.
|
||||
* THIN tiles use an 8x8x1 tile size.
|
||||
* THICK tiles use an 8x8x4 tile size.
|
||||
* 2D tiling modes rotate banks for successive Z slices
|
||||
* 3D tiling modes rotate pipes and banks for Z slices
|
||||
* Refer to memory addressing document for complete
|
||||
* details and constraints.
|
||||
*/
|
||||
enum array_mode_values array_mode;
|
||||
} gfx8;
|
||||
|
||||
struct {
|
||||
enum swizzle_mode_values swizzle;
|
||||
unsigned int num_pipes;
|
||||
unsigned int max_compressed_frags;
|
||||
unsigned int pipe_interleave;
|
||||
struct {
|
||||
enum swizzle_mode_values swizzle;
|
||||
unsigned int num_pipes;
|
||||
unsigned int max_compressed_frags;
|
||||
unsigned int pipe_interleave;
|
||||
|
||||
unsigned int num_banks;
|
||||
unsigned int num_shader_engines;
|
||||
unsigned int num_rb_per_se;
|
||||
bool shaderEnable;
|
||||
unsigned int num_banks;
|
||||
unsigned int num_shader_engines;
|
||||
unsigned int num_rb_per_se;
|
||||
bool shaderEnable;
|
||||
|
||||
bool meta_linear;
|
||||
bool rb_aligned;
|
||||
bool pipe_aligned;
|
||||
unsigned int num_pkrs;
|
||||
} gfx9;/*gfx9, gfx10 and above*/
|
||||
struct {
|
||||
enum swizzle_mode_addr3_values swizzle;
|
||||
} gfx_addr3;/*gfx with addr3 and above*/
|
||||
bool meta_linear;
|
||||
bool rb_aligned;
|
||||
bool pipe_aligned;
|
||||
unsigned int num_pkrs;
|
||||
} gfx9;/*gfx9, gfx10 and above*/
|
||||
struct {
|
||||
enum swizzle_mode_addr3_values swizzle;
|
||||
} gfx_addr3;/*gfx with addr3 and above*/
|
||||
};
|
||||
};
|
||||
|
||||
/* Rotation angle */
|
||||
|
||||
@@ -98,7 +98,7 @@ static enum mi_bits_per_pixel get_mi_bpp(
|
||||
}
|
||||
|
||||
static enum mi_tiling_format get_mi_tiling(
|
||||
union dc_tiling_info *tiling_info)
|
||||
struct dc_tiling_info *tiling_info)
|
||||
{
|
||||
switch (tiling_info->gfx8.array_mode) {
|
||||
case DC_ARRAY_1D_TILED_THIN1:
|
||||
@@ -133,7 +133,7 @@ static bool is_vert_scan(enum dc_rotation_angle rotation)
|
||||
static void dce_mi_program_pte_vm(
|
||||
struct mem_input *mi,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
enum dc_rotation_angle rotation)
|
||||
{
|
||||
struct dce_mem_input *dce_mi = TO_DCE_MEM_INPUT(mi);
|
||||
@@ -430,7 +430,7 @@ static void dce120_mi_program_display_marks(struct mem_input *mi,
|
||||
}
|
||||
|
||||
static void program_tiling(
|
||||
struct dce_mem_input *dce_mi, const union dc_tiling_info *info)
|
||||
struct dce_mem_input *dce_mi, const struct dc_tiling_info *info)
|
||||
{
|
||||
if (dce_mi->masks->GRPH_SW_MODE) { /* GFX9 */
|
||||
REG_UPDATE_6(GRPH_CONTROL,
|
||||
@@ -650,7 +650,7 @@ static void dce_mi_clear_tiling(
|
||||
static void dce_mi_program_surface_config(
|
||||
struct mem_input *mi,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
@@ -670,7 +670,7 @@ static void dce_mi_program_surface_config(
|
||||
static void dce60_mi_program_surface_config(
|
||||
struct mem_input *mi,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation, /* not used in DCE6 */
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -162,7 +162,7 @@ static void enable(struct dce_mem_input *mem_input110)
|
||||
|
||||
static void program_tiling(
|
||||
struct dce_mem_input *mem_input110,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format)
|
||||
{
|
||||
uint32_t value = 0;
|
||||
@@ -523,7 +523,7 @@ static const unsigned int dvmm_Hw_Setting_Linear[4][9] = {
|
||||
|
||||
/* Helper to get table entry from surface info */
|
||||
static const unsigned int *get_dvmm_hw_setting(
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
enum surface_pixel_format format,
|
||||
bool chroma)
|
||||
{
|
||||
@@ -563,7 +563,7 @@ static const unsigned int *get_dvmm_hw_setting(
|
||||
static void dce_mem_input_v_program_pte_vm(
|
||||
struct mem_input *mem_input,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
enum dc_rotation_angle rotation)
|
||||
{
|
||||
struct dce_mem_input *mem_input110 = TO_DCE_MEM_INPUT(mem_input);
|
||||
@@ -636,7 +636,7 @@ static void dce_mem_input_v_program_pte_vm(
|
||||
static void dce_mem_input_v_program_surface_config(
|
||||
struct mem_input *mem_input,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -140,7 +140,7 @@ void hubp1_vready_workaround(struct hubp *hubp,
|
||||
|
||||
void hubp1_program_tiling(
|
||||
struct hubp *hubp,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format)
|
||||
{
|
||||
struct dcn10_hubp *hubp1 = TO_DCN10_HUBP(hubp);
|
||||
@@ -549,7 +549,7 @@ void hubp1_dcc_control(struct hubp *hubp, bool enable,
|
||||
void hubp1_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -706,7 +706,7 @@ struct dcn10_hubp {
|
||||
void hubp1_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
@@ -739,7 +739,7 @@ void hubp1_program_rotation(
|
||||
|
||||
void hubp1_program_tiling(
|
||||
struct hubp *hubp,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format);
|
||||
|
||||
void hubp1_dcc_control(struct hubp *hubp,
|
||||
|
||||
@@ -310,7 +310,7 @@ void hubp2_setup_interdependent(
|
||||
*/
|
||||
static void hubp2_program_tiling(
|
||||
struct dcn20_hubp *hubp2,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format)
|
||||
{
|
||||
REG_UPDATE_3(DCSURF_ADDR_CONFIG,
|
||||
@@ -550,7 +550,7 @@ void hubp2_program_pixel_format(
|
||||
void hubp2_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -382,7 +382,7 @@ void hubp2_program_pixel_format(
|
||||
void hubp2_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
static void hubp201_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -318,7 +318,7 @@ bool hubp3_program_surface_flip_and_addr(
|
||||
|
||||
void hubp3_program_tiling(
|
||||
struct dcn20_hubp *hubp2,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format)
|
||||
{
|
||||
REG_UPDATE_4(DCSURF_ADDR_CONFIG,
|
||||
@@ -411,7 +411,7 @@ void hubp3_dmdata_set_attributes(
|
||||
void hubp3_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -264,7 +264,7 @@ bool hubp3_program_surface_flip_and_addr(
|
||||
void hubp3_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
@@ -280,7 +280,7 @@ void hubp3_setup(
|
||||
|
||||
void hubp3_program_tiling(
|
||||
struct dcn20_hubp *hubp2,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format);
|
||||
|
||||
void hubp3_dcc_control(struct hubp *hubp, bool enable,
|
||||
|
||||
@@ -172,7 +172,7 @@ void hubp35_program_pixel_format(
|
||||
void hubp35_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -65,7 +65,7 @@ void hubp35_program_pixel_format(
|
||||
void hubp35_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -532,7 +532,7 @@ void hubp401_dcc_control(struct hubp *hubp,
|
||||
|
||||
void hubp401_program_tiling(
|
||||
struct dcn20_hubp *hubp2,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format)
|
||||
{
|
||||
/* DCSURF_ADDR_CONFIG still shows up in reg spec, but does not need to be programmed for DCN4x
|
||||
@@ -580,7 +580,7 @@ void hubp401_program_size(
|
||||
void hubp401_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -290,7 +290,7 @@ void hubp401_dcc_control(struct hubp *hubp,
|
||||
|
||||
void hubp401_program_tiling(
|
||||
struct dcn20_hubp *hubp2,
|
||||
const union dc_tiling_info *info,
|
||||
const struct dc_tiling_info *info,
|
||||
const enum surface_pixel_format pixel_format);
|
||||
|
||||
void hubp401_program_size(
|
||||
@@ -302,7 +302,7 @@ void hubp401_program_size(
|
||||
void hubp401_program_surface_config(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -165,7 +165,7 @@ struct hubp_funcs {
|
||||
void (*hubp_program_pte_vm)(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
enum dc_rotation_angle rotation);
|
||||
|
||||
void (*hubp_set_vm_system_aperture_settings)(
|
||||
@@ -179,7 +179,7 @@ struct hubp_funcs {
|
||||
void (*hubp_program_surface_config)(
|
||||
struct hubp *hubp,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
@@ -150,7 +150,7 @@ struct mem_input_funcs {
|
||||
void (*mem_input_program_pte_vm)(
|
||||
struct mem_input *mem_input,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
enum dc_rotation_angle rotation);
|
||||
|
||||
void (*mem_input_set_vm_system_aperture_settings)(
|
||||
@@ -164,7 +164,7 @@ struct mem_input_funcs {
|
||||
void (*mem_input_program_surface_config)(
|
||||
struct mem_input *mem_input,
|
||||
enum surface_pixel_format format,
|
||||
union dc_tiling_info *tiling_info,
|
||||
struct dc_tiling_info *tiling_info,
|
||||
struct plane_size *plane_size,
|
||||
enum dc_rotation_angle rotation,
|
||||
struct dc_plane_dcc_param *dcc,
|
||||
|
||||
Reference in New Issue
Block a user