mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
drm/amd/display: Use fb_base/fb_offset if available for translation
[Why] In the case where we do have these passed in then we should be using these instead of the registers - those are only programmed when booting the adapter as primary. [How] Check if fb_base/fb_offset are non-zero. The value of 0 is invalid for fb_base but is valid for fb_offset on dGPU. Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Reviewed-by: Aric Cyr <Aric.Cyr@amd.com> Reviewed-by: Yongqiang Sun <yongqiang.sun@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
115c7e7f05
commit
9a14e81649
@ -60,6 +60,12 @@ static void dmub_dcn20_get_fb_base_offset(struct dmub_srv *dmub,
|
||||
{
|
||||
uint32_t tmp;
|
||||
|
||||
if (dmub->fb_base || dmub->fb_offset) {
|
||||
*fb_base = dmub->fb_base;
|
||||
*fb_offset = dmub->fb_offset;
|
||||
return;
|
||||
}
|
||||
|
||||
REG_GET(DCN_VM_FB_LOCATION_BASE, FB_BASE, &tmp);
|
||||
*fb_base = (uint64_t)tmp << 24;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user