drm/amd/amdgpu: simplify gfx_v9_0_cp_gfx_enable()
authorTom St Denis <tom.stdenis@amd.com>
Wed, 5 Apr 2017 13:03:08 +0000 (09:03 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 6 Apr 2017 17:27:24 +0000 (13:27 -0400)
Signed-off-by: Tom St Denis <tom.stdenis@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c

index def1dbb8c970ff8e5e6dc7813f47dfed248db13b..e1a7a6f96e1dcef7bcea023fa756b49e6cab0596 100644 (file)
@@ -1497,14 +1497,10 @@ static void gfx_v9_0_cp_gfx_enable(struct amdgpu_device *adev, bool enable)
        int i;
        u32 tmp = RREG32(SOC15_REG_OFFSET(GC, 0, mmCP_ME_CNTL));
 
-       if (enable) {
-               tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, ME_HALT, 0);
-               tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, PFP_HALT, 0);
-               tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, CE_HALT, 0);
-       } else {
-               tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, ME_HALT, 1);
-               tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, PFP_HALT, 1);
-               tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, CE_HALT, 1);
+       tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, ME_HALT, enable ? 0 : 1);
+       tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, PFP_HALT, enable ? 0 : 1);
+       tmp = REG_SET_FIELD(tmp, CP_ME_CNTL, CE_HALT, enable ? 0 : 1);
+       if (!enable) {
                for (i = 0; i < adev->gfx.num_gfx_rings; i++)
                        adev->gfx.gfx_ring[i].ready = false;
        }