提交 ca7db22b 编写于 作者: A Alex Deucher 提交者: Dave Airlie

drm/radeon/kms: DCE6.1 watermark updates for TN

Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: NDave Airlie <airlied@redhat.com>
上级 5d7486c7
...@@ -581,7 +581,7 @@ static u32 evergreen_line_buffer_adjust(struct radeon_device *rdev, ...@@ -581,7 +581,7 @@ static u32 evergreen_line_buffer_adjust(struct radeon_device *rdev,
return 0; return 0;
} }
static u32 evergreen_get_number_of_dram_channels(struct radeon_device *rdev) u32 evergreen_get_number_of_dram_channels(struct radeon_device *rdev)
{ {
u32 tmp = RREG32(MC_SHARED_CHMAP); u32 tmp = RREG32(MC_SHARED_CHMAP);
......
...@@ -60,6 +60,7 @@ extern void r600_ih_ring_fini(struct radeon_device *rdev); ...@@ -60,6 +60,7 @@ extern void r600_ih_ring_fini(struct radeon_device *rdev);
extern void evergreen_fix_pci_max_read_req_size(struct radeon_device *rdev); extern void evergreen_fix_pci_max_read_req_size(struct radeon_device *rdev);
extern void evergreen_mc_stop(struct radeon_device *rdev, struct evergreen_mc_save *save); extern void evergreen_mc_stop(struct radeon_device *rdev, struct evergreen_mc_save *save);
extern void evergreen_mc_resume(struct radeon_device *rdev, struct evergreen_mc_save *save); extern void evergreen_mc_resume(struct radeon_device *rdev, struct evergreen_mc_save *save);
extern u32 evergreen_get_number_of_dram_channels(struct radeon_device *rdev);
/* get temperature in millidegrees */ /* get temperature in millidegrees */
int si_get_temp(struct radeon_device *rdev) int si_get_temp(struct radeon_device *rdev)
...@@ -449,7 +450,7 @@ static u32 dce6_line_buffer_adjust(struct radeon_device *rdev, ...@@ -449,7 +450,7 @@ static u32 dce6_line_buffer_adjust(struct radeon_device *rdev,
return 0; return 0;
} }
static u32 dce6_get_number_of_dram_channels(struct radeon_device *rdev) static u32 si_get_number_of_dram_channels(struct radeon_device *rdev)
{ {
u32 tmp = RREG32(MC_SHARED_CHMAP); u32 tmp = RREG32(MC_SHARED_CHMAP);
...@@ -766,7 +767,10 @@ static void dce6_program_watermarks(struct radeon_device *rdev, ...@@ -766,7 +767,10 @@ static void dce6_program_watermarks(struct radeon_device *rdev,
wm.vtaps = 2; wm.vtaps = 2;
wm.bytes_per_pixel = 4; /* XXX: get this from fb config */ wm.bytes_per_pixel = 4; /* XXX: get this from fb config */
wm.lb_size = lb_size; wm.lb_size = lb_size;
wm.dram_channels = dce6_get_number_of_dram_channels(rdev); if (rdev->family == CHIP_ARUBA)
wm.dram_channels = evergreen_get_number_of_dram_channels(rdev);
else
wm.dram_channels = si_get_number_of_dram_channels(rdev);
wm.num_heads = num_heads; wm.num_heads = num_heads;
/* set for high clocks */ /* set for high clocks */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册