diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 14 | 
1 files changed, 5 insertions, 9 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c index 0c390485bc10..d2d9dce68c2f 100644 --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c @@ -1236,6 +1236,8 @@ static const struct amdgpu_gfxoff_quirk amdgpu_gfxoff_quirk_list[] = {  	{ 0x1002, 0x15dd, 0x1002, 0x15dd, 0xc8 },  	/* https://bugzilla.kernel.org/show_bug.cgi?id=207171 */  	{ 0x1002, 0x15dd, 0x103c, 0x83e7, 0xd3 }, +	/* GFXOFF is unstable on C6 parts with a VBIOS 113-RAVEN-114 */ +	{ 0x1002, 0x15dd, 0x1002, 0x15dd, 0xc6 },  	{ 0, 0, 0, 0, 0 },  }; @@ -5025,10 +5027,9 @@ static int gfx_v9_0_set_powergating_state(void *handle,  	switch (adev->asic_type) {  	case CHIP_RAVEN:  	case CHIP_RENOIR: -		if (!enable) { +		if (!enable)  			amdgpu_gfx_off_ctrl(adev, false); -			cancel_delayed_work_sync(&adev->gfx.gfx_off_delay_work); -		} +  		if (adev->pg_flags & AMD_PG_SUPPORT_RLC_SMU_HS) {  			gfx_v9_0_enable_sck_slow_down_on_power_up(adev, true);  			gfx_v9_0_enable_sck_slow_down_on_power_down(adev, true); @@ -5052,12 +5053,7 @@ static int gfx_v9_0_set_powergating_state(void *handle,  			amdgpu_gfx_off_ctrl(adev, true);  		break;  	case CHIP_VEGA12: -		if (!enable) { -			amdgpu_gfx_off_ctrl(adev, false); -			cancel_delayed_work_sync(&adev->gfx.gfx_off_delay_work); -		} else { -			amdgpu_gfx_off_ctrl(adev, true); -		} +		amdgpu_gfx_off_ctrl(adev, enable);  		break;  	default:  		break; |