drm/amdgpu: export mmhub set clockgating into gmc
authorHuang Rui <ray.huang@amd.com>
Wed, 31 May 2017 15:13:34 +0000 (23:13 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 6 Jun 2017 20:58:49 +0000 (16:58 -0400)
Signed-off-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c
drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.h

index 979c884625bff82a38435fd36fce6599d037dd13..e86c1803396ff3516c7ec791f10ba380224cfa46 100644 (file)
@@ -809,7 +809,9 @@ static int gmc_v9_0_soft_reset(void *handle)
 static int gmc_v9_0_set_clockgating_state(void *handle,
                                        enum amd_clockgating_state state)
 {
-       return 0;
+       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+
+       return mmhub_v1_0_set_clockgating(adev, state);
 }
 
 static int gmc_v9_0_set_powergating_state(void *handle,
index 2ead630c7f379342ec475d0a6159e5f71495f952..7a7177b423e8b5659104ff24077e4cec890b990f 100644 (file)
@@ -538,11 +538,9 @@ static void athub_update_medium_grain_light_sleep(struct amdgpu_device *adev,
                WREG32(SOC15_REG_OFFSET(ATHUB, 0, mmATHUB_MISC_CNTL), data);
 }
 
-static int mmhub_v1_0_set_clockgating_state(void *handle,
-                                       enum amd_clockgating_state state)
+int mmhub_v1_0_set_clockgating(struct amdgpu_device *adev,
+                              enum amd_clockgating_state state)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
-
        if (amdgpu_sriov_vf(adev))
                return 0;
 
@@ -565,6 +563,12 @@ static int mmhub_v1_0_set_clockgating_state(void *handle,
        return 0;
 }
 
+static int mmhub_v1_0_set_clockgating_state(void *handle,
+                                           enum amd_clockgating_state state)
+{
+       return 0;
+}
+
 static void mmhub_v1_0_get_clockgating_state(void *handle, u32 *flags)
 {
        struct amdgpu_device *adev = (struct amdgpu_device *)handle;
index f8a57e16ec254ba4e7d03cdaefde1931b15beb56..d9ca98545810cdfa33cc6f7ed8927ddd91c04005 100644 (file)
@@ -29,6 +29,8 @@ void mmhub_v1_0_gart_disable(struct amdgpu_device *adev);
 void mmhub_v1_0_set_fault_enable_default(struct amdgpu_device *adev,
                                         bool value);
 void mmhub_v1_0_init(struct amdgpu_device *adev);
+int mmhub_v1_0_set_clockgating(struct amdgpu_device *adev,
+                              enum amd_clockgating_state state);
 
 extern const struct amd_ip_funcs mmhub_v1_0_ip_funcs;
 extern const struct amdgpu_ip_block_version mmhub_v1_0_ip_block;