diff options
author | Jerome Glisse <[email protected]> | 2010-08-23 15:39:39 -0400 |
---|---|---|
committer | Jerome Glisse <[email protected]> | 2010-08-23 15:42:32 -0400 |
commit | bcf7f66a934ebd9c91da90d6e1f9b169c33c746c (patch) | |
tree | 3b6bf92aad60327e309bf9ca0c480e1858ae746d /src/gallium/drivers/r600/r600_shader.c | |
parent | 6355ae2b80a01b1d58824ffeae0c638d917519c0 (diff) |
r600g: export one component per pixel + r7xx uncompression shader
We need to always at least export one component (wether it's depth
or color. Add valid r7xx shader program for depth decompression.
Signed-off-by: Jerome Glisse <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_shader.c')
-rw-r--r-- | src/gallium/drivers/r600/r600_shader.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 5cdbe2bfe80..b20a5a11bec 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -191,6 +191,10 @@ static int r600_pipe_shader_ps(struct pipe_context *ctx, struct r600_context_sta num_cout++; } } + if (!exports_ps) { + /* always at least export 1 component per pixel */ + exports_ps = 2; + } state->states[R600_PS_SHADER__SPI_PS_IN_CONTROL_0] = S_0286CC_NUM_INTERP(rshader->ninput) | S_0286CC_PERSP_GRADIENT_ENA(1); state->states[R600_PS_SHADER__SPI_PS_IN_CONTROL_1] = 0x00000000; |