From: Alex Deucher Date: Fri, 8 Apr 2016 04:42:51 +0000 (-0400) Subject: drm/amdgpu/sdma: add proper CG flags for fiji X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=e08d53cb6943b9b263021320523629005c1f512f;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git drm/amdgpu/sdma: add proper CG flags for fiji We were already enabling these CG features, this uses the standard interface for doing so. Acked-by: Tom St Denis Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c index a78f13ea4d86..739365da0649 100644 --- a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c +++ b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c @@ -1464,7 +1464,7 @@ static void fiji_update_sdma_medium_grain_clock_gating( { uint32_t temp, data; - if (enable) { + if (enable && (adev->cg_flags & AMD_CG_SUPPORT_SDMA_MGCG)) { temp = data = RREG32(mmSDMA0_CLK_CTRL); data &= ~(SDMA0_CLK_CTRL__SOFT_OVERRIDE7_MASK | SDMA0_CLK_CTRL__SOFT_OVERRIDE6_MASK | @@ -1524,7 +1524,7 @@ static void fiji_update_sdma_medium_grain_light_sleep( { uint32_t temp, data; - if (enable) { + if (enable && (adev->cg_flags & AMD_CG_SUPPORT_SDMA_LS)) { temp = data = RREG32(mmSDMA0_POWER_CNTL); data |= SDMA0_POWER_CNTL__MEM_POWER_OVERRIDE_MASK; diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c b/drivers/gpu/drm/amd/amdgpu/vi.c index 8d9b03f62491..57595049ad9a 100644 --- a/drivers/gpu/drm/amd/amdgpu/vi.c +++ b/drivers/gpu/drm/amd/amdgpu/vi.c @@ -1083,7 +1083,9 @@ static int vi_common_early_init(void *handle) AMD_CG_SUPPORT_GFX_CGTS | AMD_CG_SUPPORT_GFX_CGTS_LS | AMD_CG_SUPPORT_GFX_CGCG | - AMD_CG_SUPPORT_GFX_CGLS; + AMD_CG_SUPPORT_GFX_CGLS | + AMD_CG_SUPPORT_SDMA_MGCG | + AMD_CG_SUPPORT_SDMA_LS; adev->pg_flags = 0; adev->external_rev_id = adev->rev_id + 0x3c; break;