diff options
author | Huang Rui <ray.huang@amd.com> | 2017-03-24 10:12:32 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-03-29 23:55:19 -0400 |
commit | e96487a6a7288b46e6b8c0ec5b659bb4e59fbdab (patch) | |
tree | 86598dd9f93d04b2da5c1556de5a2521bbf5b67c /drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | |
parent | 12ad27faa81e47875bd5a6daa43f33bddf12e6b6 (diff) | |
download | linux-e96487a6a7288b46e6b8c0ec5b659bb4e59fbdab.tar.gz linux-e96487a6a7288b46e6b8c0ec5b659bb4e59fbdab.tar.bz2 linux-e96487a6a7288b46e6b8c0ec5b659bb4e59fbdab.zip |
drm/amdgpu: add get_clockgating callback for nbio v6.1
Signed-off-by: Huang Rui <ray.huang@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c b/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c index 902187206c86..97057f4a10de 100644 --- a/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c +++ b/drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c @@ -206,6 +206,21 @@ void nbio_v6_1_update_medium_grain_light_sleep(struct amdgpu_device *adev, WREG32_PCIE(smnPCIE_CNTL2, data); } +void nbio_v6_1_get_clockgating_state(struct amdgpu_device *adev, u32 *flags) +{ + int data; + + /* AMD_CG_SUPPORT_BIF_MGCG */ + data = RREG32_PCIE(smnCPM_CONTROL); + if (data & CPM_CONTROL__LCLK_DYN_GATE_ENABLE_MASK) + *flags |= AMD_CG_SUPPORT_BIF_MGCG; + + /* AMD_CG_SUPPORT_BIF_LS */ + data = RREG32_PCIE(smnPCIE_CNTL2); + if (data & PCIE_CNTL2__SLV_MEM_LS_EN_MASK) + *flags |= AMD_CG_SUPPORT_BIF_LS; +} + struct nbio_hdp_flush_reg nbio_v6_1_hdp_flush_reg; struct nbio_pcie_index_data nbio_v6_1_pcie_index_data; |