nvc0: add a new bin for the code segment

To avoid the bins list to grow up indefinitely when the code segment
size will be bumped, we need to separate that bin from the SCREEN
one because it contains other resources like the uniform bo.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
Samuel Pitoiset 2016-08-31 22:52:45 +02:00
parent 63ac80879e
commit 96e21ad763
2 changed files with 6 additions and 4 deletions

View file

@ -439,11 +439,11 @@ nvc0_create(struct pipe_screen *pscreen, void *priv, unsigned ctxflags)
flags = NV_VRAM_DOMAIN(&screen->base) | NOUVEAU_BO_RD;
BCTX_REFN_bo(nvc0->bufctx_3d, 3D_SCREEN, flags, screen->text);
BCTX_REFN_bo(nvc0->bufctx_3d, 3D_TEXT, flags, screen->text);
BCTX_REFN_bo(nvc0->bufctx_3d, 3D_SCREEN, flags, screen->uniform_bo);
BCTX_REFN_bo(nvc0->bufctx_3d, 3D_SCREEN, flags, screen->txc);
if (screen->compute) {
BCTX_REFN_bo(nvc0->bufctx_cp, CP_SCREEN, flags, screen->text);
BCTX_REFN_bo(nvc0->bufctx_cp, CP_TEXT, flags, screen->text);
BCTX_REFN_bo(nvc0->bufctx_cp, CP_SCREEN, flags, screen->uniform_bo);
BCTX_REFN_bo(nvc0->bufctx_cp, CP_SCREEN, flags, screen->txc);
}

View file

@ -82,7 +82,8 @@
#define NVC0_BIND_3D_BUF 246
#define NVC0_BIND_3D_SCREEN 247
#define NVC0_BIND_3D_TLS 249
#define NVC0_BIND_3D_COUNT 250
#define NVC0_BIND_3D_TEXT 250
#define NVC0_BIND_3D_COUNT 251
/* compute bufctx (during launch_grid) */
#define NVC0_BIND_CP_CB(i) ( 0 + (i))
@ -93,7 +94,8 @@
#define NVC0_BIND_CP_SCREEN 51
#define NVC0_BIND_CP_QUERY 52
#define NVC0_BIND_CP_BUF 53
#define NVC0_BIND_CP_COUNT 54
#define NVC0_BIND_CP_TEXT 54
#define NVC0_BIND_CP_COUNT 55
/* bufctx for other operations */
#define NVC0_BIND_2D 0