Commit | Line | Data |
---|---|---|
af7afbd2 BS |
1 | #ifndef __NV04_INSTMEM_H__ |
2 | #define __NV04_INSTMEM_H__ | |
3 | ||
3863c9bc | 4 | #include <core/gpuobj.h> |
ebb945a9 | 5 | #include <core/ramht.h> |
3863c9bc BS |
6 | #include <core/mm.h> |
7 | ||
8 | #include <subdev/instmem.h> | |
9 | ||
af7afbd2 | 10 | struct nv04_instmem_priv { |
3863c9bc BS |
11 | struct nouveau_instmem base; |
12 | bool created; | |
13 | ||
14 | void __iomem *iomem; | |
15 | struct nouveau_mm heap; | |
16 | ||
af7afbd2 | 17 | struct nouveau_gpuobj *vbios; |
ebb945a9 | 18 | struct nouveau_ramht *ramht; |
af7afbd2 BS |
19 | struct nouveau_gpuobj *ramro; |
20 | struct nouveau_gpuobj *ramfc; | |
21 | }; | |
22 | ||
ebb945a9 BS |
23 | static inline struct nv04_instmem_priv * |
24 | nv04_instmem(void *obj) | |
25 | { | |
26 | return (void *)nouveau_instmem(obj); | |
27 | } | |
28 | ||
3863c9bc BS |
29 | struct nv04_instobj_priv { |
30 | struct nouveau_instobj base; | |
31 | struct nouveau_mm_node *mem; | |
32 | }; | |
33 | ||
34 | void nv04_instmem_dtor(struct nouveau_object *); | |
35 | ||
36 | int nv04_instmem_alloc(struct nouveau_instmem *, struct nouveau_object *, | |
37 | u32 size, u32 align, struct nouveau_object **pobject); | |
38 | ||
af7afbd2 | 39 | #endif |