linux/drivers/gpu/drm/nouveau/nouveau_chan.h
<<
>>
Prefs
   1#ifndef __NOUVEAU_CHAN_H__
   2#define __NOUVEAU_CHAN_H__
   3
   4struct nouveau_cli;
   5
   6struct nouveau_channel {
   7        struct nouveau_cli *cli;
   8        struct nouveau_drm *drm;
   9
  10        u32 handle;
  11        u32 vram;
  12        u32 gart;
  13
  14        struct {
  15                struct nouveau_bo *buffer;
  16                struct nouveau_vma vma;
  17                u32 handle;
  18        } push;
  19
  20        /* TODO: this will be reworked in the near future */
  21        bool accel_done;
  22        void *fence;
  23        struct {
  24                int max;
  25                int free;
  26                int cur;
  27                int put;
  28                int ib_base;
  29                int ib_max;
  30                int ib_free;
  31                int ib_put;
  32        } dma;
  33        u32 user_get_hi;
  34        u32 user_get;
  35        u32 user_put;
  36
  37        struct nouveau_object *object;
  38};
  39
  40
  41int  nouveau_channel_new(struct nouveau_drm *, struct nouveau_cli *,
  42                         u32 parent, u32 handle, u32 arg0, u32 arg1,
  43                         struct nouveau_channel **);
  44void nouveau_channel_del(struct nouveau_channel **);
  45int  nouveau_channel_idle(struct nouveau_channel *);
  46
  47#endif
  48