diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0509-drm-amdgpu-Set-the-default-value-about-gds-vmid0-siz.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/0509-drm-amdgpu-Set-the-default-value-about-gds-vmid0-siz.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0509-drm-amdgpu-Set-the-default-value-about-gds-vmid0-siz.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0509-drm-amdgpu-Set-the-default-value-about-gds-vmid0-siz.patch new file mode 100644 index 00000000..680e1642 --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0509-drm-amdgpu-Set-the-default-value-about-gds-vmid0-siz.patch @@ -0,0 +1,51 @@ +From 51e7a64e0ce247a428098c5388ec43174f0bfe05 Mon Sep 17 00:00:00 2001 +From: Emily Deng <Emily.Deng@amd.com> +Date: Fri, 12 Oct 2018 18:14:32 +0800 +Subject: [PATCH 0509/2940] drm/amdgpu: Set the default value about gds vmid0 + size + +For sriov, when first run windows guest, then run linux guest, the gds +vmid0 size will be reset to 0 by windows guest. So if the value has been +reset to 0, then set the value to the default value in linux guest. + +v2: +Fixed value instead of reading mmGDS_VMID0_SIZE. + +v3: +Set the default value of the switch. + +Signed-off-by: Emily Deng <Emily.Deng@amd.com> +Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 15 ++++++++++++++- + 1 file changed, 14 insertions(+), 1 deletion(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c +index d104f7d01870..e6b4eb6f9b43 100644 +--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c ++++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c +@@ -4908,7 +4908,20 @@ static void gfx_v9_0_set_rlc_funcs(struct amdgpu_device *adev) + static void gfx_v9_0_set_gds_init(struct amdgpu_device *adev) + { + /* init asci gds info */ +- adev->gds.mem.total_size = RREG32_SOC15(GC, 0, mmGDS_VMID0_SIZE); ++ switch (adev->asic_type) { ++ case CHIP_VEGA10: ++ case CHIP_VEGA12: ++ case CHIP_VEGA20: ++ adev->gds.mem.total_size = 0x10000; ++ break; ++ case CHIP_RAVEN: ++ adev->gds.mem.total_size = 0x1000; ++ break; ++ default: ++ adev->gds.mem.total_size = 0x10000; ++ break; ++ } ++ + adev->gds.gws.total_size = 64; + adev->gds.oa.total_size = 16; + +-- +2.17.1 + |