diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 | ||||
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 4 | ||||
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 5 | 
3 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h index 6647fb26ef25..0d13e6368b96 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h @@ -1654,6 +1654,7 @@ struct amdgpu_pm {  	u8                      fan_max_rpm;  	/* dpm */  	bool                    dpm_enabled; +	bool                    sysfs_initialized;  	struct amdgpu_dpm       dpm;  	const struct firmware	*fw;	/* SMC firmware */  	uint32_t                fw_version; diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c index dc29ed8145c2..6c9e0902a414 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c @@ -184,10 +184,6 @@ int amdgpu_crtc_page_flip(struct drm_crtc *crtc,  		goto cleanup;  	} -	fence_get(work->excl); -	for (i = 0; i < work->shared_count; ++i) -		fence_get(work->shared[i]); -  	amdgpu_bo_get_tiling_flags(new_rbo, &tiling_flags);  	amdgpu_bo_unreserve(new_rbo); diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c index ed2bbe5b10af..22a8c7d3a3ab 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c @@ -695,6 +695,9 @@ int amdgpu_pm_sysfs_init(struct amdgpu_device *adev)  {  	int ret; +	if (adev->pm.sysfs_initialized) +		return 0; +  	if (adev->pm.funcs->get_temperature == NULL)  		return 0;  	adev->pm.int_hwmon_dev = hwmon_device_register_with_groups(adev->dev, @@ -723,6 +726,8 @@ int amdgpu_pm_sysfs_init(struct amdgpu_device *adev)  		return ret;  	} +	adev->pm.sysfs_initialized = true; +  	return 0;  }  | 

