diff options
author | Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com> | 2019-05-22 18:05:41 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2019-06-22 09:34:14 -0500 |
commit | bda9afdacf8942c313a47cc95582737345a91c5e (patch) | |
tree | 93c6ddff82040a2b1baba38e14026d800da59767 /drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c | |
parent | a6465d1f3b8f863bd4ffd4048d10de3558b378d5 (diff) |
drm/amd/display: move vmid determination logic to a module
Currently vmid is decided internally inside dc. With the introduction
of new asics we are required to coordinate vmid use with external
components.
This change converts vmid logic to a DAL module allowing vmid to be
passed in as a parameter to DC.
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Reviewed-by: Charlene Liu <Charlene.Liu@amd.com>
Acked-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c')
-rw-r--r-- | drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c index 50953c0bd4e3..27679ef6ebe8 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c +++ b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_vmid.c @@ -51,12 +51,9 @@ void dcn20_vmid_setup(struct dcn20_vmid *vmid, const struct dcn_vmid_page_table_ REG_SET_2(CNTL, 0, VM_CONTEXT0_PAGE_TABLE_DEPTH, config->depth, VM_CONTEXT0_PAGE_TABLE_BLOCK_SIZE, config->block_size); -} -void dcn20_vmid_set_ptb(struct dcn20_vmid *vmid, uint64_t base) -{ REG_SET(PAGE_TABLE_BASE_ADDR_HI32, 0, - VM_CONTEXT0_PAGE_DIRECTORY_ENTRY_HI32, (base >> 32) & 0xFFFFFFFF); + VM_CONTEXT0_PAGE_DIRECTORY_ENTRY_HI32, (config->page_table_base_addr >> 32) & 0xFFFFFFFF); REG_SET(PAGE_TABLE_BASE_ADDR_LO32, 0, - VM_CONTEXT0_PAGE_DIRECTORY_ENTRY_LO32, base & 0xFFFFFFFF); + VM_CONTEXT0_PAGE_DIRECTORY_ENTRY_LO32, config->page_table_base_addr & 0xFFFFFFFF); } |