a2xx: add logicop support

This passes both gl-1.0-logicop and gl-1.1-xor piglits.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
Ilia Mirkin 2017-08-14 23:38:52 -04:00
parent 978c4c597a
commit 08f72a8944
1 changed files with 4 additions and 5 deletions

View File

@ -61,11 +61,10 @@ fd2_blend_state_create(struct pipe_context *pctx,
{
const struct pipe_rt_blend_state *rt = &cso->rt[0];
struct fd2_blend_stateobj *so;
unsigned rop = PIPE_LOGICOP_COPY;
if (cso->logicop_enable) {
DBG("Unsupported! logicop");
return NULL;
}
if (cso->logicop_enable)
rop = cso->logicop_func; /* 1:1 mapping with hw */
if (cso->independent_blend_enable) {
DBG("Unsupported! independent blend state");
@ -78,7 +77,7 @@ fd2_blend_state_create(struct pipe_context *pctx,
so->base = *cso;
so->rb_colorcontrol = A2XX_RB_COLORCONTROL_ROP_CODE(12);
so->rb_colorcontrol = A2XX_RB_COLORCONTROL_ROP_CODE(rop);
so->rb_blendcontrol =
A2XX_RB_BLEND_CONTROL_COLOR_SRCBLEND(fd_blend_factor(rt->rgb_src_factor)) |