diff options
Diffstat (limited to 'libdrm/nouveau/nouveau_private.h')
-rw-r--r-- | libdrm/nouveau/nouveau_private.h | 84 |
1 files changed, 1 insertions, 83 deletions
diff --git a/libdrm/nouveau/nouveau_private.h b/libdrm/nouveau/nouveau_private.h index e92cb1f7..49dde5eb 100644 --- a/libdrm/nouveau/nouveau_private.h +++ b/libdrm/nouveau/nouveau_private.h @@ -36,8 +36,6 @@ #include "nouveau_resource.h" #include "nouveau_pushbuf.h" -#define NOUVEAU_PUSHBUF_MAX_BUFFERS 1024 -#define NOUVEAU_PUSHBUF_MAX_RELOCS 1024 struct nouveau_pushbuf_priv { struct nouveau_pushbuf base; @@ -51,95 +49,23 @@ struct nouveau_pushbuf_priv { unsigned nr_buffers; struct drm_nouveau_gem_pushbuf_reloc *relocs; unsigned nr_relocs; - - /*XXX: nomm */ - struct nouveau_fence *fence; }; #define nouveau_pushbuf(n) ((struct nouveau_pushbuf_priv *)(n)) -#define pbbo_to_ptr(o) ((uint64_t)(unsigned long)(o)) -#define ptr_to_pbbo(h) ((struct nouveau_pushbuf_bo *)(unsigned long)(h)) -#define pbrel_to_ptr(o) ((uint64_t)(unsigned long)(o)) -#define ptr_to_pbrel(h) ((struct nouveau_pushbuf_reloc *)(unsigned long)(h)) -#define bo_to_ptr(o) ((uint64_t)(unsigned long)(o)) -#define ptr_to_bo(h) ((struct nouveau_bo_priv *)(unsigned long)(h)) - int nouveau_pushbuf_init(struct nouveau_channel *); -struct nouveau_dma_priv { - uint32_t base; - uint32_t max; - uint32_t cur; - uint32_t put; - uint32_t free; - - int push_free; -} dma; - struct nouveau_channel_priv { struct nouveau_channel base; struct drm_nouveau_channel_alloc drm; - void *notifier_block; + struct nouveau_bo *notifier_bo; struct nouveau_pushbuf_priv pb; - - /*XXX: nomm */ - volatile uint32_t *user, *put, *get, *ref_cnt; - uint32_t *pushbuf; - struct nouveau_dma_priv struct_dma; - struct nouveau_dma_priv *dma; - struct nouveau_fence *fence_head; - struct nouveau_fence *fence_tail; - uint32_t fence_sequence; - struct nouveau_grobj *fence_grobj; - struct nouveau_notifier *fence_ntfy; }; #define nouveau_channel(n) ((struct nouveau_channel_priv *)(n)) -struct nouveau_fence { - struct nouveau_channel *channel; -}; - -struct nouveau_fence_cb { - struct nouveau_fence_cb *next; - void (*func)(void *); - void *priv; -}; - -struct nouveau_fence_priv { - struct nouveau_fence base; - int refcount; - - struct nouveau_fence *next; - struct nouveau_fence_cb *signal_cb; - - uint32_t sequence; - int emitted; - int signalled; -}; -#define nouveau_fence(n) ((struct nouveau_fence_priv *)(n)) - -int -nouveau_fence_new(struct nouveau_channel *, struct nouveau_fence **); - -int -nouveau_fence_ref(struct nouveau_fence *, struct nouveau_fence **); - -int -nouveau_fence_signal_cb(struct nouveau_fence *, void (*)(void *), void *); - -void -nouveau_fence_emit(struct nouveau_fence *); - -int -nouveau_fence_wait(struct nouveau_fence **); - -void -nouveau_fence_flush(struct nouveau_channel *); - struct nouveau_grobj_priv { struct nouveau_grobj base; }; @@ -181,10 +107,6 @@ struct nouveau_bo_priv { int pinned; uint64_t offset; uint32_t domain; - - /*XXX: nomm stuff */ - struct nouveau_fence *fence; - struct nouveau_fence *wr_fence; }; #define nouveau_bo(n) ((struct nouveau_bo_priv *)(n)) @@ -197,8 +119,4 @@ nouveau_bo_takedown(struct nouveau_device *); struct drm_nouveau_gem_pushbuf_bo * nouveau_bo_emit_buffer(struct nouveau_channel *, struct nouveau_bo *); -int -nouveau_bo_validate_nomm(struct nouveau_bo_priv *, uint32_t); - -#include "nouveau_dma.h" #endif |