diff options
author | Alex Deucher <alexander.deucher@amd.com> | 2019-06-17 13:06:37 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2019-06-20 12:26:57 -0500 |
commit | f94ec6f8b8857e5792328774fa47984f7d7df194 (patch) | |
tree | 3cb8768940eb5f057d4a7cea25f83fe7c803bc74 /drivers/gpu/drm/amd/display/dc/inc | |
parent | Revert "drm/amd/display: Add Underflow Asserts to dc" (diff) | |
download | linux-dev-f94ec6f8b8857e5792328774fa47984f7d7df194.tar.xz linux-dev-f94ec6f8b8857e5792328774fa47984f7d7df194.zip |
Revert "drm/amd/display: move vmid determination logic out of dc"
This reverts commit 11cd74cdb98aa6f4d6f54a0082dd28e0d4743746.
Revert this to apply the version that includes DCN2 support.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/inc')
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/inc/hw/vmid.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/inc/vm_helper.h | 16 |
3 files changed, 14 insertions, 6 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h b/drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h index e4909d21b9f2..5420ad2da96f 100644 --- a/drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h +++ b/drivers/gpu/drm/amd/display/dc/inc/hw/hubp.h @@ -80,7 +80,8 @@ struct hubp_funcs { bool (*hubp_program_surface_flip_and_addr)( struct hubp *hubp, const struct dc_plane_address *address, - bool flip_immediate); + bool flip_immediate, + uint8_t vmid); void (*hubp_program_pte_vm)( struct hubp *hubp, diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/vmid.h b/drivers/gpu/drm/amd/display/dc/inc/hw/vmid.h index 76de0e4284e0..037beb0a2a27 100644 --- a/drivers/gpu/drm/amd/display/dc/inc/hw/vmid.h +++ b/drivers/gpu/drm/amd/display/dc/inc/hw/vmid.h @@ -44,7 +44,6 @@ struct dcn_vmid_page_table_config { uint64_t page_table_end_addr; enum dcn_hubbub_page_table_depth depth; enum dcn_hubbub_page_table_block_size block_size; - uint64_t page_table_base_addr; }; #endif /* DAL_DC_INC_HW_VMID_H_ */ diff --git a/drivers/gpu/drm/amd/display/dc/inc/vm_helper.h b/drivers/gpu/drm/amd/display/dc/inc/vm_helper.h index 8bfcef0a3675..193407f76a80 100644 --- a/drivers/gpu/drm/amd/display/dc/inc/vm_helper.h +++ b/drivers/gpu/drm/amd/display/dc/inc/vm_helper.h @@ -28,21 +28,29 @@ #include "dc_types.h" +#define MAX_VMID 16 #define MAX_HUBP 6 struct vmid_usage { - int vmid_usage[2]; + uint16_t vmid_usage[2]; }; struct vm_helper { unsigned int num_vmid; + unsigned int num_hubp; + unsigned int num_vmids_available; + uint64_t ptb_assigned_to_vmid[MAX_VMID]; struct vmid_usage hubp_vmid_usage[MAX_HUBP]; }; -void vm_helper_mark_vmid_used(struct vm_helper *vm_helper, unsigned int pos, uint8_t hubp_idx); +uint8_t get_vmid_for_ptb( + struct vm_helper *vm_helper, + int64_t ptb, + uint8_t pipe_idx); -void vm_helper_init( +void init_vm_helper( struct vm_helper *vm_helper, - unsigned int num_vmid); + unsigned int num_vmid, + unsigned int num_hubp); #endif /* DC_INC_VM_HELPER_H_ */ |