diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-06-20 11:25:44 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-06-20 11:25:44 -0400 |
commit | af52739b922f656eb1f39016fabaabe4baeda2e2 (patch) | |
tree | 79a7aa810d0493cd0cf4adebac26d37f12e8b545 /drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | |
parent | 25ed6a5e97809129a1bc852b6b5c7d03baa112c4 (diff) | |
parent | 33688abb2802ff3a230bd2441f765477b94cc89e (diff) |
Merge 4.7-rc4 into staging-next
We want the fixes in here, and we can resolve a merge issue in
drivers/iio/industrialio-trigger.c
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c index 6bd961fb43dc..82256558e0f5 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | |||
@@ -183,13 +183,6 @@ static int amdgpu_pp_sw_fini(void *handle) | |||
183 | if (ret) | 183 | if (ret) |
184 | return ret; | 184 | return ret; |
185 | 185 | ||
186 | #ifdef CONFIG_DRM_AMD_POWERPLAY | ||
187 | if (adev->pp_enabled) { | ||
188 | amdgpu_pm_sysfs_fini(adev); | ||
189 | amd_powerplay_fini(adev->powerplay.pp_handle); | ||
190 | } | ||
191 | #endif | ||
192 | |||
193 | return ret; | 186 | return ret; |
194 | } | 187 | } |
195 | 188 | ||
@@ -223,6 +216,22 @@ static int amdgpu_pp_hw_fini(void *handle) | |||
223 | return ret; | 216 | return ret; |
224 | } | 217 | } |
225 | 218 | ||
219 | static void amdgpu_pp_late_fini(void *handle) | ||
220 | { | ||
221 | #ifdef CONFIG_DRM_AMD_POWERPLAY | ||
222 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; | ||
223 | |||
224 | if (adev->pp_enabled) { | ||
225 | amdgpu_pm_sysfs_fini(adev); | ||
226 | amd_powerplay_fini(adev->powerplay.pp_handle); | ||
227 | } | ||
228 | |||
229 | if (adev->powerplay.ip_funcs->late_fini) | ||
230 | adev->powerplay.ip_funcs->late_fini( | ||
231 | adev->powerplay.pp_handle); | ||
232 | #endif | ||
233 | } | ||
234 | |||
226 | static int amdgpu_pp_suspend(void *handle) | 235 | static int amdgpu_pp_suspend(void *handle) |
227 | { | 236 | { |
228 | int ret = 0; | 237 | int ret = 0; |
@@ -311,6 +320,7 @@ const struct amd_ip_funcs amdgpu_pp_ip_funcs = { | |||
311 | .sw_fini = amdgpu_pp_sw_fini, | 320 | .sw_fini = amdgpu_pp_sw_fini, |
312 | .hw_init = amdgpu_pp_hw_init, | 321 | .hw_init = amdgpu_pp_hw_init, |
313 | .hw_fini = amdgpu_pp_hw_fini, | 322 | .hw_fini = amdgpu_pp_hw_fini, |
323 | .late_fini = amdgpu_pp_late_fini, | ||
314 | .suspend = amdgpu_pp_suspend, | 324 | .suspend = amdgpu_pp_suspend, |
315 | .resume = amdgpu_pp_resume, | 325 | .resume = amdgpu_pp_resume, |
316 | .is_idle = amdgpu_pp_is_idle, | 326 | .is_idle = amdgpu_pp_is_idle, |