On Mon, Jan 19, 2015 at 5:17 PM, Axel Davy <axel.d...@ens.fr> wrote: > Resolving a multisampled depth texture into > a single sampled texture is supported on >= SM4.1 > hw. It is possible some previous hw support it. > > The ability was tested on radeonsi and nvc0.
I'm not aware of any issues in this regard on nv50 either... take a look at http://people.freedesktop.org/~imirkin/nv50-comparison/problems.html perhaps there are piglits that indicate problems. It does seem like the original G80 (chip id == 0x50) did have some extra-special problems in EXT_framebuffer_multisample related to depth, perhaps it's the same as with the original r6xx chips. > Apparently is is also supported for radeon >= r700. > > This patch adds the MULTISAMPLE_Z_RESOLVE cap and > adds it to the drivers. It is advertised for drivers > for which it is sure the ability is supported. > > Signed-off-by: Axel Davy <axel.d...@ens.fr> > --- > v2: Add mention of the first sample to the definition. > Remove comment about possible support for drivers that > don't support MSAA yet. > src/gallium/docs/source/screen.rst | 3 +++ > src/gallium/drivers/freedreno/freedreno_screen.c | 1 + > src/gallium/drivers/i915/i915_screen.c | 1 + > src/gallium/drivers/ilo/ilo_screen.c | 1 + > src/gallium/drivers/llvmpipe/lp_screen.c | 2 ++ > src/gallium/drivers/nouveau/nv30/nv30_screen.c | 1 + > src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 + > src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 1 + > src/gallium/drivers/r300/r300_screen.c | 1 + > src/gallium/drivers/r600/r600_pipe.c | 2 ++ > src/gallium/drivers/radeonsi/si_pipe.c | 1 + > src/gallium/drivers/softpipe/sp_screen.c | 2 ++ > src/gallium/drivers/svga/svga_screen.c | 1 + > src/gallium/drivers/vc4/vc4_screen.c | 1 + > src/gallium/include/pipe/p_defines.h | 1 + > 15 files changed, 20 insertions(+) > > index 6c5703a..351f3c2 100644 > --- a/src/gallium/include/pipe/p_defines.h > +++ b/src/gallium/include/pipe/p_defines.h > @@ -573,6 +573,7 @@ enum pipe_cap { > PIPE_CAP_SAMPLER_VIEW_TARGET = 110, > PIPE_CAP_CLIP_HALFZ = 111, > PIPE_CAP_VERTEXID_NOBASE, > + PIPE_CAP_MULTISAMPLE_Z_RESOLVE, = 113 (and fix up NOBASE too maybe?) -ilia _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev