]> Pileus Git - ~andy/linux/blob - drivers/gpu/drm/nouveau/core/subdev/instmem/nv04.h
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
[~andy/linux] / drivers / gpu / drm / nouveau / core / subdev / instmem / nv04.h
1 #ifndef __NV04_INSTMEM_H__
2 #define __NV04_INSTMEM_H__
3
4 #include <core/gpuobj.h>
5 #include <core/ramht.h>
6 #include <core/mm.h>
7
8 #include "priv.h"
9
10 extern struct nouveau_instobj_impl nv04_instobj_oclass;
11
12 struct nv04_instmem_priv {
13         struct nouveau_instmem base;
14
15         void __iomem *iomem;
16         struct nouveau_mm heap;
17
18         struct nouveau_gpuobj *vbios;
19         struct nouveau_ramht  *ramht;
20         struct nouveau_gpuobj *ramro;
21         struct nouveau_gpuobj *ramfc;
22 };
23
24 static inline struct nv04_instmem_priv *
25 nv04_instmem(void *obj)
26 {
27         return (void *)nouveau_instmem(obj);
28 }
29
30 struct nv04_instobj_priv {
31         struct nouveau_instobj base;
32         struct nouveau_mm_node *mem;
33 };
34
35 void nv04_instmem_dtor(struct nouveau_object *);
36
37 int nv04_instmem_alloc(struct nouveau_instmem *, struct nouveau_object *,
38                        u32 size, u32 align, struct nouveau_object **pobject);
39
40 #endif