nv50/nvc0: make transfers aware of PIPE_TRANSFER_MAP_DIRECTLY
authorMarcin Slusarz <marcin.slusarz@gmail.com>
Mon, 9 May 2011 18:12:38 +0000 (20:12 +0200)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Mon, 9 May 2011 18:19:19 +0000 (20:19 +0200)
commit4e1b1cbd0dd5c436d3c9360870df14e2b5e548f3
tree50ccbbb1a2b258599ae75a6d5b71b081da5a3ceb
parent86852236a396bd9932a6ab6e73def0c8ef2f23a5
nv50/nvc0: make transfers aware of PIPE_TRANSFER_MAP_DIRECTLY

If state tracker asked us to map resource directly and we can't
do it (because of tiling), return NULL instead of doing full transfer
- state tracker should handle it and fallback to some other method
or repeat transfer without PIPE_TRANSFER_MAP_DIRECTLY.

It greatly improves performance of xorg state tracker on nv50+,
because its fallback (DFS/UTS) is much faster than full transfer.
src/gallium/drivers/nv50/nv50_transfer.c
src/gallium/drivers/nvc0/nvc0_transfer.c