diff options
author | Christian König <christian.koenig@amd.com> | 2013-10-15 14:12:03 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2013-10-18 16:16:16 -0400 |
commit | bcf6f1e935b92aa40c259c5abb427ac49fc083eb (patch) | |
tree | 353ba1e1754bcb787ffebcc4c708d0d3bac3fe86 | |
parent | 5510f124c6ee53cb52cf632240aea982d64c7d99 (diff) |
drm/radeon/uvd: revert lower msg&fb buffer requirements on UVD3
This only seem to work for H.264 but not for VC-1 streams.
Need to investigate further why exactly.
This reverts commit 4b40e5921230beb1951f04d2b1b92c4c88fbad43.
Signed-off-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_cs.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_uvd.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/uvd_v1_0.c | 4 |
3 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c index 66c222836631..80285e35bc65 100644 --- a/drivers/gpu/drm/radeon/radeon_cs.c +++ b/drivers/gpu/drm/radeon/radeon_cs.c | |||
@@ -85,9 +85,8 @@ static int radeon_cs_parser_relocs(struct radeon_cs_parser *p) | |||
85 | VRAM, also but everything into VRAM on AGP cards to avoid | 85 | VRAM, also but everything into VRAM on AGP cards to avoid |
86 | image corruptions */ | 86 | image corruptions */ |
87 | if (p->ring == R600_RING_TYPE_UVD_INDEX && | 87 | if (p->ring == R600_RING_TYPE_UVD_INDEX && |
88 | p->rdev->family < CHIP_PALM && | ||
89 | (i == 0 || drm_pci_device_is_agp(p->rdev->ddev))) { | 88 | (i == 0 || drm_pci_device_is_agp(p->rdev->ddev))) { |
90 | 89 | /* TODO: is this still needed for NI+ ? */ | |
91 | p->relocs[i].lobj.domain = | 90 | p->relocs[i].lobj.domain = |
92 | RADEON_GEM_DOMAIN_VRAM; | 91 | RADEON_GEM_DOMAIN_VRAM; |
93 | 92 | ||
diff --git a/drivers/gpu/drm/radeon/radeon_uvd.c b/drivers/gpu/drm/radeon/radeon_uvd.c index 4f2e73f79638..308eff5be1b4 100644 --- a/drivers/gpu/drm/radeon/radeon_uvd.c +++ b/drivers/gpu/drm/radeon/radeon_uvd.c | |||
@@ -476,7 +476,8 @@ static int radeon_uvd_cs_reloc(struct radeon_cs_parser *p, | |||
476 | return -EINVAL; | 476 | return -EINVAL; |
477 | } | 477 | } |
478 | 478 | ||
479 | if (p->rdev->family < CHIP_PALM && (cmd == 0 || cmd == 0x3) && | 479 | /* TODO: is this still necessary on NI+ ? */ |
480 | if ((cmd == 0 || cmd == 0x3) && | ||
480 | (start >> 28) != (p->rdev->uvd.gpu_addr >> 28)) { | 481 | (start >> 28) != (p->rdev->uvd.gpu_addr >> 28)) { |
481 | DRM_ERROR("msg/fb buffer %LX-%LX out of 256MB segment!\n", | 482 | DRM_ERROR("msg/fb buffer %LX-%LX out of 256MB segment!\n", |
482 | start, end); | 483 | start, end); |
diff --git a/drivers/gpu/drm/radeon/uvd_v1_0.c b/drivers/gpu/drm/radeon/uvd_v1_0.c index 3100fa9cb52f..7266805d9786 100644 --- a/drivers/gpu/drm/radeon/uvd_v1_0.c +++ b/drivers/gpu/drm/radeon/uvd_v1_0.c | |||
@@ -212,8 +212,8 @@ int uvd_v1_0_start(struct radeon_device *rdev) | |||
212 | /* enable VCPU clock */ | 212 | /* enable VCPU clock */ |
213 | WREG32(UVD_VCPU_CNTL, 1 << 9); | 213 | WREG32(UVD_VCPU_CNTL, 1 << 9); |
214 | 214 | ||
215 | /* enable UMC and NC0 */ | 215 | /* enable UMC */ |
216 | WREG32_P(UVD_LMI_CTRL2, 1 << 13, ~((1 << 8) | (1 << 13))); | 216 | WREG32_P(UVD_LMI_CTRL2, 0, ~(1 << 8)); |
217 | 217 | ||
218 | /* boot up the VCPU */ | 218 | /* boot up the VCPU */ |
219 | WREG32(UVD_SOFT_RESET, 0); | 219 | WREG32(UVD_SOFT_RESET, 0); |