From b71a564e2509e1000044a9873cbee6d6a6a5ab90 Mon Sep 17 00:00:00 2001 From: Luben Tuikov Date: Wed, 26 Feb 2020 15:30:36 -0500 Subject: [PATCH] drm/amdgpu: Fine-grained TMZ support MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Add fine-grained per-ASIC TMZ support. At the moment TMZ support is experimental for all ASICs which support it. Signed-off-by: Luben Tuikov Reviewed-by: Alex Deucher Reviewed-by: Christian König Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 30 ++++++++++++++++--------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c index ce13c37584608..acabb57aa8af9 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c @@ -383,18 +383,28 @@ int amdgpu_gmc_allocate_vm_inv_eng(struct amdgpu_device *adev) */ void amdgpu_gmc_tmz_set(struct amdgpu_device *adev) { - if (!amdgpu_tmz) - return; - - if (adev->asic_type < CHIP_RAVEN || - adev->asic_type == CHIP_ARCTURUS) { + switch (adev->asic_type) { + case CHIP_RAVEN: + case CHIP_RENOIR: + case CHIP_NAVI10: + case CHIP_NAVI14: + case CHIP_NAVI12: + /* Don't enable it by default yet. + */ + if (amdgpu_tmz < 1) { + adev->gmc.tmz_enabled = false; + dev_info(adev->dev, + "Trusted Memory Zone (TMZ) feature disabled as experimental (default)\n"); + } else { + adev->gmc.tmz_enabled = true; + dev_info(adev->dev, + "Trusted Memory Zone (TMZ) feature enabled as experimental (cmd line)\n"); + } + break; + default: adev->gmc.tmz_enabled = false; dev_warn(adev->dev, "Trusted Memory Zone (TMZ) feature not supported\n"); - } else { - - adev->gmc.tmz_enabled = true; - dev_info(adev->dev, - "Trusted Memory Zone (TMZ) feature supported and enabled\n"); + break; } } -- 2.30.2