DMUB_WINDOW_MEMORY_TYPE_FB, /* DMUB_WINDOW_CURSOR_OFFLOAD */
};
int r;
+ int mem_domain = AMDGPU_GEM_DOMAIN_GTT;
switch (amdgpu_ip_version(adev, DCE_HWIP, 0)) {
case IP_VERSION(2, 1, 0):
return -EINVAL;
}
+ /* Limit to allocate dmub to GTT on DCN32/1
+ * TODO: Other asics with GDDR7 may have worse latency
+ */
+ if (dmub_asic != DMUB_ASIC_DCN32 &&
+ dmub_asic != DMUB_ASIC_DCN321)
+ mem_domain |= AMDGPU_GEM_DOMAIN_VRAM;
+
/*
* Allocate a framebuffer based on the total size of all the regions.
* TODO: Move this into GART.
*/
r = amdgpu_bo_create_kernel(adev, region_info.fb_size, PAGE_SIZE,
- AMDGPU_GEM_DOMAIN_VRAM |
- AMDGPU_GEM_DOMAIN_GTT,
+ mem_domain,
&adev->dm.dmub_bo,
&adev->dm.dmub_bo_gpu_addr,
&adev->dm.dmub_bo_cpu_addr);