From 45cfb9cf089cd56878b1cb5d15391d2470dbeb7c Mon Sep 17 00:00:00 2001 From: Ben Skeggs Date: Mon, 20 Dec 2010 10:53:44 +1000 Subject: nouveau: split pushbuf macros specific to nv04-nv50 out, and add nvc0 Signed-off-by: Ben Skeggs --- nouveau/nouveau_pushbuf.h | 38 -------------------------------------- 1 file changed, 38 deletions(-) (limited to 'nouveau/nouveau_pushbuf.h') diff --git a/nouveau/nouveau_pushbuf.h b/nouveau/nouveau_pushbuf.h index 52d13a0a..2a98789c 100644 --- a/nouveau/nouveau_pushbuf.h +++ b/nouveau/nouveau_pushbuf.h @@ -95,50 +95,12 @@ WAIT_RING(struct nouveau_channel *chan, unsigned size) nouveau_pushbuf_flush(chan, size); } -static __inline__ void -BEGIN_RING(struct nouveau_channel *chan, struct nouveau_grobj *gr, - unsigned mthd, unsigned size) -{ - if (gr->bound == NOUVEAU_GROBJ_UNBOUND) - nouveau_grobj_autobind(gr); - chan->subc[gr->subc].sequence = chan->subc_sequence++; - - WAIT_RING(chan, size + 1); - OUT_RING(chan, (gr->subc << 13) | (size << 18) | mthd); -} - -/* non-incrementing BEGIN_RING */ -static __inline__ void -BEGIN_RING_NI(struct nouveau_channel *chan, struct nouveau_grobj *gr, - unsigned mthd, unsigned size) -{ - BEGIN_RING(chan, gr, mthd | 0x40000000, size); -} - static __inline__ void FIRE_RING(struct nouveau_channel *chan) { nouveau_pushbuf_flush(chan, 0); } -static __inline__ void -BIND_RING(struct nouveau_channel *chan, struct nouveau_grobj *gr, unsigned sc) -{ - struct nouveau_subchannel *subc = &gr->channel->subc[sc]; - - if (subc->gr) { - if (subc->gr->bound == NOUVEAU_GROBJ_BOUND_EXPLICIT) - assert(0); - subc->gr->bound = NOUVEAU_GROBJ_UNBOUND; - } - subc->gr = gr; - subc->gr->subc = sc; - subc->gr->bound = NOUVEAU_GROBJ_BOUND_EXPLICIT; - - BEGIN_RING(chan, gr, 0x0000, 1); - OUT_RING (chan, gr->handle); -} - static __inline__ int OUT_RELOC(struct nouveau_channel *chan, struct nouveau_bo *bo, unsigned data, unsigned flags, unsigned vor, unsigned tor) -- cgit v1.2.3