|
@@ -4208,31 +4208,11 @@ static int gfx_v8_0_rlc_load_microcode(struct amdgpu_device *adev)
|
|
static int gfx_v8_0_rlc_resume(struct amdgpu_device *adev)
|
|
static int gfx_v8_0_rlc_resume(struct amdgpu_device *adev)
|
|
{
|
|
{
|
|
int r;
|
|
int r;
|
|
- u32 tmp;
|
|
|
|
|
|
|
|
gfx_v8_0_rlc_stop(adev);
|
|
gfx_v8_0_rlc_stop(adev);
|
|
-
|
|
|
|
- /* disable CG */
|
|
|
|
- tmp = RREG32(mmRLC_CGCG_CGLS_CTRL);
|
|
|
|
- tmp &= ~(RLC_CGCG_CGLS_CTRL__CGCG_EN_MASK |
|
|
|
|
- RLC_CGCG_CGLS_CTRL__CGLS_EN_MASK);
|
|
|
|
- WREG32(mmRLC_CGCG_CGLS_CTRL, tmp);
|
|
|
|
- if (adev->asic_type == CHIP_POLARIS11 ||
|
|
|
|
- adev->asic_type == CHIP_POLARIS10 ||
|
|
|
|
- adev->asic_type == CHIP_POLARIS12 ||
|
|
|
|
- adev->asic_type == CHIP_VEGAM) {
|
|
|
|
- tmp = RREG32(mmRLC_CGCG_CGLS_CTRL_3D);
|
|
|
|
- tmp &= ~0x3;
|
|
|
|
- WREG32(mmRLC_CGCG_CGLS_CTRL_3D, tmp);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- /* disable PG */
|
|
|
|
- WREG32(mmRLC_PG_CNTL, 0);
|
|
|
|
-
|
|
|
|
gfx_v8_0_rlc_reset(adev);
|
|
gfx_v8_0_rlc_reset(adev);
|
|
gfx_v8_0_init_pg(adev);
|
|
gfx_v8_0_init_pg(adev);
|
|
|
|
|
|
-
|
|
|
|
if (adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT) {
|
|
if (adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT) {
|
|
/* legacy rlc firmware loading */
|
|
/* legacy rlc firmware loading */
|
|
r = gfx_v8_0_rlc_load_microcode(adev);
|
|
r = gfx_v8_0_rlc_load_microcode(adev);
|