st/mesa: optionally apply texture swizzle to border color v2
authorChristoph Bumiller <christoph.bumiller@speed.at>
Fri, 12 Apr 2013 11:42:01 +0000 (13:42 +0200)
committerChristoph Bumiller <e0425955@student.tuwien.ac.at>
Thu, 18 Apr 2013 18:35:40 +0000 (20:35 +0200)
commit729abfd0f53c27ba58da95882bef985945933c65
tree47623e71727be33fda952923809fb9b8391311ee
parent246ff8f887e10a2828fb43104a06ba6f2505b74d
st/mesa: optionally apply texture swizzle to border color v2

This is the only sane solution for nv50 and nvc0 (really, trust me),
but since on other hardware the border colour is tightly coupled with
texture state they'd have to undo the swizzle, so I've added a cap.

The dependency of update_sampler on the texture updates was
introduced to avoid doing the apply_depthmode to the swizzle twice.

v2: Moved swizzling helper to u_format.c, extended the CAP to
provide more accurate information.
20 files changed:
src/gallium/auxiliary/util/u_format.c
src/gallium/auxiliary/util/u_format.h
src/gallium/docs/source/cso/sampler.rst
src/gallium/docs/source/screen.rst
src/gallium/drivers/freedreno/freedreno_screen.c
src/gallium/drivers/i915/i915_screen.c
src/gallium/drivers/llvmpipe/lp_screen.c
src/gallium/drivers/nv30/nv30_screen.c
src/gallium/drivers/nv50/nv50_screen.c
src/gallium/drivers/nvc0/nvc0_screen.c
src/gallium/drivers/r300/r300_screen.c
src/gallium/drivers/r600/r600_pipe.c
src/gallium/drivers/radeonsi/radeonsi_pipe.c
src/gallium/drivers/softpipe/sp_screen.c
src/gallium/drivers/svga/svga_screen.c
src/gallium/include/pipe/p_defines.h
src/mesa/state_tracker/st_atom.c
src/mesa/state_tracker/st_atom_sampler.c
src/mesa/state_tracker/st_context.c
src/mesa/state_tracker/st_context.h