Ben Skeggs | af7afbd | 2012-07-13 16:14:25 +1000 | [diff] [blame] | 1 | #ifndef __NV04_INSTMEM_H__ |
| 2 | #define __NV04_INSTMEM_H__ |
| 3 | |
Ben Skeggs | 3863c9b | 2012-07-14 19:09:17 +1000 | [diff] [blame^] | 4 | #include <core/gpuobj.h> |
| 5 | #include <core/mm.h> |
| 6 | |
| 7 | #include <subdev/instmem.h> |
| 8 | |
Ben Skeggs | af7afbd | 2012-07-13 16:14:25 +1000 | [diff] [blame] | 9 | struct nv04_instmem_priv { |
Ben Skeggs | 3863c9b | 2012-07-14 19:09:17 +1000 | [diff] [blame^] | 10 | struct nouveau_instmem base; |
| 11 | bool created; |
| 12 | |
| 13 | void __iomem *iomem; |
| 14 | struct nouveau_mm heap; |
| 15 | |
Ben Skeggs | af7afbd | 2012-07-13 16:14:25 +1000 | [diff] [blame] | 16 | struct nouveau_gpuobj *vbios; |
| 17 | struct nouveau_gpuobj *ramht; |
| 18 | struct nouveau_gpuobj *ramro; |
| 19 | struct nouveau_gpuobj *ramfc; |
| 20 | }; |
| 21 | |
Ben Skeggs | 3863c9b | 2012-07-14 19:09:17 +1000 | [diff] [blame^] | 22 | struct nv04_instobj_priv { |
| 23 | struct nouveau_instobj base; |
| 24 | struct nouveau_mm_node *mem; |
| 25 | }; |
| 26 | |
| 27 | void nv04_instmem_dtor(struct nouveau_object *); |
| 28 | |
| 29 | int nv04_instmem_alloc(struct nouveau_instmem *, struct nouveau_object *, |
| 30 | u32 size, u32 align, struct nouveau_object **pobject); |
| 31 | |
Ben Skeggs | af7afbd | 2012-07-13 16:14:25 +1000 | [diff] [blame] | 32 | #endif |