diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2010-11-22 13:11:50 -0500 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2010-11-22 18:06:10 -0500 |
commit | 718dfd443897d70d97fc19afddfbcfe1e39a9c59 (patch) | |
tree | bf601e8f33674056a99bd718d1893ed52023a7b4 /src | |
parent | 61c97b0812c820564c7bc9d64a998c109bcd46b3 (diff) |
Ontario: add workaround for small pixmap issues with DFS
On past asics these kind a problems were usually due to a bad
backend map config. I suspect in this case, and the previous
cases it may be related to using linear buffers rather than
tiled.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/evergreen_exa.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c index 72e3a5d8..1c027525 100644 --- a/src/evergreen_exa.c +++ b/src/evergreen_exa.c @@ -1671,6 +1671,10 @@ EVERGREENDownloadFromScreen(PixmapPtr pSrc, int x, int y, int w, if (src_domain & ~(uint32_t)RADEON_GEM_DOMAIN_VRAM) goto copy; + if ((info->ChipFamily == CHIP_FAMILY_PALM) && + ((w < 128) || (h < 128))) + goto copy; + size = scratch_pitch * h; scratch = radeon_bo_open(info->bufmgr, 0, size, 0, RADEON_GEM_DOMAIN_GTT, 0); if (scratch == NULL) { |