diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2011-04-20 03:10:08 -0400 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2011-04-20 03:10:08 -0400 |
commit | 903e90c31cf0319be9297529aa7b8daa1756cf63 (patch) | |
tree | fe9e5c104b22d1cda6284fd96fce09339db5166e /src/evergreen_textured_videofuncs.c | |
parent | 982c22f16c8eeee9be81779fbfe17d8d3f9b6897 (diff) |
EXA/Xv: used cached bo tiling flags for accel setup on 6xx+
This avoids calling into the kernel for each bo in the accel
code. This is a follow on to:
cc7d1fa39da40a532fcdbe6c7924ca47a879e66a
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Diffstat (limited to 'src/evergreen_textured_videofuncs.c')
-rw-r--r-- | src/evergreen_textured_videofuncs.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/evergreen_textured_videofuncs.c b/src/evergreen_textured_videofuncs.c index 147cd4e0..6200cdc2 100644 --- a/src/evergreen_textured_videofuncs.c +++ b/src/evergreen_textured_videofuncs.c @@ -154,18 +154,11 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) CLEAR (vs_const_conf); CLEAR (ps_const_conf); -#if defined(XF86DRM_MODE) - if (info->cs) { - dst_obj.offset = 0; - src_obj.offset = 0; - dst_obj.bo = radeon_get_pixmap_bo(pPixmap); - } else -#endif - { - dst_obj.offset = exaGetPixmapOffset(pPixmap) + info->fbLocation + pScrn->fbOffset; - src_obj.offset = pPriv->src_offset + info->fbLocation + pScrn->fbOffset; - dst_obj.bo = src_obj.bo = NULL; - } + dst_obj.offset = 0; + src_obj.offset = 0; + dst_obj.bo = radeon_get_pixmap_bo(pPixmap); + dst_obj.tiling_flags = radeon_get_pixmap_tiling(pPixmap); + dst_obj.pitch = exaGetPixmapPitch(pPixmap) / (pPixmap->drawable.bitsPerPixel / 8); src_obj.pitch = pPriv->src_pitch; @@ -174,6 +167,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) src_obj.bpp = 16; src_obj.domain = RADEON_GEM_DOMAIN_VRAM | RADEON_GEM_DOMAIN_GTT; src_obj.bo = pPriv->src_bo[pPriv->currentBuffer]; + src_obj.tiling_flags = 0; dst_obj.width = pPixmap->drawable.width; dst_obj.height = pPixmap->drawable.height; |