|
@@ -1411,13 +1411,6 @@ static int amdgpu_late_init(struct amdgpu_device *adev)
|
|
|
if (adev->ip_blocks[i].type == AMD_IP_BLOCK_TYPE_UVD ||
|
|
|
adev->ip_blocks[i].type == AMD_IP_BLOCK_TYPE_VCE)
|
|
|
continue;
|
|
|
- /* enable clockgating to save power */
|
|
|
- r = adev->ip_blocks[i].funcs->set_clockgating_state((void *)adev,
|
|
|
- AMD_CG_STATE_GATE);
|
|
|
- if (r) {
|
|
|
- DRM_ERROR("set_clockgating_state(gate) of IP block <%s> failed %d\n", adev->ip_blocks[i].funcs->name, r);
|
|
|
- return r;
|
|
|
- }
|
|
|
if (adev->ip_blocks[i].funcs->late_init) {
|
|
|
r = adev->ip_blocks[i].funcs->late_init((void *)adev);
|
|
|
if (r) {
|
|
@@ -1426,6 +1419,13 @@ static int amdgpu_late_init(struct amdgpu_device *adev)
|
|
|
}
|
|
|
adev->ip_block_status[i].late_initialized = true;
|
|
|
}
|
|
|
+ /* enable clockgating to save power */
|
|
|
+ r = adev->ip_blocks[i].funcs->set_clockgating_state((void *)adev,
|
|
|
+ AMD_CG_STATE_GATE);
|
|
|
+ if (r) {
|
|
|
+ DRM_ERROR("set_clockgating_state(gate) of IP block <%s> failed %d\n", adev->ip_blocks[i].funcs->name, r);
|
|
|
+ return r;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return 0;
|