diff options
author | James Zhu <James.Zhu@amd.com> | 2018-09-10 16:00:36 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-09-26 22:09:24 -0400 |
commit | 03d6e3aac81634a91dd2790f8c199ffb3927fe3c (patch) | |
tree | 1c6e343575897cebfc58612cff171b91092c12de | |
parent | f28ff06210f444da0b52168450625ad883ff8a1f (diff) |
drm/amdgpu:Add DPG mode read/write macro
Some registers read/write needs program through SDRAM pool under
DPG mode.
Signed-off-by: James Zhu <James.Zhu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Huang Rui <ray.huang@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/soc15_common.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/soc15_common.h b/drivers/gpu/drm/amd/amdgpu/soc15_common.h index f5d602540673..d35fac5b5a8a 100644 --- a/drivers/gpu/drm/amd/amdgpu/soc15_common.h +++ b/drivers/gpu/drm/amd/amdgpu/soc15_common.h | |||
@@ -64,6 +64,26 @@ | |||
64 | } \ | 64 | } \ |
65 | } while (0) | 65 | } while (0) |
66 | 66 | ||
67 | #define RREG32_SOC15_DPG_MODE(ip, inst, reg, mask, sram_sel) \ | ||
68 | ({ WREG32_SOC15(ip, inst, mmUVD_DPG_LMA_MASK, mask); \ | ||
69 | WREG32_SOC15(ip, inst, mmUVD_DPG_LMA_CTL, \ | ||
70 | UVD_DPG_LMA_CTL__MASK_EN_MASK | \ | ||
71 | ((adev->reg_offset[ip##_HWIP][inst][reg##_BASE_IDX] + reg) \ | ||
72 | << UVD_DPG_LMA_CTL__READ_WRITE_ADDR__SHIFT) | \ | ||
73 | (sram_sel << UVD_DPG_LMA_CTL__SRAM_SEL__SHIFT)); \ | ||
74 | RREG32_SOC15(ip, inst, mmUVD_DPG_LMA_DATA); }) | ||
75 | |||
76 | #define WREG32_SOC15_DPG_MODE(ip, inst, reg, value, mask, sram_sel) \ | ||
77 | do { \ | ||
78 | WREG32_SOC15(ip, inst, mmUVD_DPG_LMA_DATA, value); \ | ||
79 | WREG32_SOC15(ip, inst, mmUVD_DPG_LMA_MASK, mask); \ | ||
80 | WREG32_SOC15(ip, inst, mmUVD_DPG_LMA_CTL, \ | ||
81 | UVD_DPG_LMA_CTL__READ_WRITE_MASK | \ | ||
82 | ((adev->reg_offset[ip##_HWIP][inst][reg##_BASE_IDX] + reg) \ | ||
83 | << UVD_DPG_LMA_CTL__READ_WRITE_ADDR__SHIFT) | \ | ||
84 | (sram_sel << UVD_DPG_LMA_CTL__SRAM_SEL__SHIFT)); \ | ||
85 | } while (0) | ||
86 | |||
67 | #endif | 87 | #endif |
68 | 88 | ||
69 | 89 | ||