diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c index d93cb42..69b2fd9 100644 --- a/src/evergreen_exa.c +++ b/src/evergreen_exa.c @@ -163,6 +163,7 @@ EVERGREENPrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) ps_alu_consts = radeon_vbo_space(pScrn, &accel_state->cbuf, 256); ps_const_conf.bo = accel_state->cbuf.vb_bo; ps_const_conf.const_addr = accel_state->cbuf.vb_mc_addr + accel_state->cbuf.vb_offset; + ps_const_conf.cpu_ptr = (void*)ps_alu_consts; if (accel_state->dst_obj.bpp == 16) { r = (fg >> 11) & 0x1f; g = (fg >> 5) & 0x3f; @@ -1282,6 +1283,7 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture, cbuf = radeon_vbo_space(pScrn, &accel_state->cbuf, 256); vs_const_conf.bo = accel_state->cbuf.vb_bo; vs_const_conf.const_addr = accel_state->cbuf.vb_mc_addr + accel_state->cbuf.vb_offset; + vs_const_conf.cpu_ptr = (void*)cbuf; EVERGREENXFormSetup(pSrcPicture, pSrc, 0, cbuf); if (pMask) diff --git a/src/evergreen_state.h b/src/evergreen_state.h index 480c141..204f188 100644 --- a/src/evergreen_state.h +++ b/src/evergreen_state.h @@ -120,6 +120,7 @@ typedef struct { int size_bytes; uint64_t const_addr; struct radeon_bo *bo; + uint32_t *cpu_ptr; } const_config_t; /* Vertex buffer / vtx resource */