diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 13 | 
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 3317d1536f4f..2c5f093e79e3 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -2158,10 +2158,18 @@ bool amdgpu_device_asic_has_dc_support(enum amd_asic_type asic_type)  	switch (asic_type) {  #if defined(CONFIG_DRM_AMD_DC)  	case CHIP_BONAIRE: -	case CHIP_HAWAII:  	case CHIP_KAVERI:  	case CHIP_KABINI:  	case CHIP_MULLINS: +		/* +		 * We have systems in the wild with these ASICs that require +		 * LVDS and VGA support which is not supported with DC. +		 * +		 * Fallback to the non-DC driver here by default so as not to +		 * cause regressions. +		 */ +		return amdgpu_dc > 0; +	case CHIP_HAWAII:  	case CHIP_CARRIZO:  	case CHIP_STONEY:  	case CHIP_POLARIS10: @@ -2739,6 +2747,9 @@ int amdgpu_device_resume(struct drm_device *dev, bool resume, bool fbcon)  	if (r)  		return r; +	/* Make sure IB tests flushed */ +	flush_delayed_work(&adev->late_init_work); +  	/* blat the mode back in */  	if (fbcon) {  		if (!amdgpu_device_has_dc_support(adev)) {  | 
