From aa985f339d28cb95c54a635652d1ba7f9d394eca Mon Sep 17 00:00:00 2001 From: Luca Barbieri Date: Mon, 12 Apr 2010 04:49:02 +0200 Subject: [PATCH] nvfx: always use M2MF instead of the blitter Currently we are relocating transfers to VRAM to use the blitter, which is terrible. Maybe for ->VRAM the blitter could be better, but we can't be perfectly sure of that due to relocations. In other words, just do the simple thing, and defer fine-tuning the transfer hardware method to a later stage, while making it work decently now. --- src/gallium/drivers/nvfx/nv04_surface_2d.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/nvfx/nv04_surface_2d.c b/src/gallium/drivers/nvfx/nv04_surface_2d.c index 005d72b..53453f2 100644 --- a/src/gallium/drivers/nvfx/nv04_surface_2d.c +++ b/src/gallium/drivers/nvfx/nv04_surface_2d.c @@ -298,16 +298,11 @@ nv04_surface_copy(struct nv04_surface_2d *ctx, struct pipe_surface *dst, return; } - /* NV_CONTEXT_SURFACES_2D has buffer alignment restrictions, fallback - * to NV_MEMORY_TO_MEMORY_FORMAT in this case. - */ - if ((src->offset & 63) || (dst->offset & 63) || - (src_pitch & 63) || (dst_pitch & 63)) { - nv04_surface_copy_m2mf(ctx, dst, dx, dy, src, sx, sy, w, h); - return; - } - - nv04_surface_copy_blit(ctx, dst, dx, dy, src, sx, sy, w, h); + /* Use M2MF instead of the blitter since it always works + * Any possible performance drop is likely to be not very significant + * and dwarfed anyway by the current buffer management problems + */ + nv04_surface_copy_m2mf(ctx, dst, dx, dy, src, sx, sy, w, h); } static void -- 2.7.4