instmem.h 878 B

1234567891011121314151617181920212223242526272829
  1. #ifndef __NVKM_INSTMEM_H__
  2. #define __NVKM_INSTMEM_H__
  3. #include <core/subdev.h>
  4. struct nvkm_memory;
  5. struct nvkm_instmem {
  6. const struct nvkm_instmem_func *func;
  7. struct nvkm_subdev subdev;
  8. struct list_head list;
  9. u32 reserved;
  10. struct nvkm_memory *vbios;
  11. struct nvkm_ramht *ramht;
  12. struct nvkm_memory *ramro;
  13. struct nvkm_memory *ramfc;
  14. };
  15. u32 nvkm_instmem_rd32(struct nvkm_instmem *, u32 addr);
  16. void nvkm_instmem_wr32(struct nvkm_instmem *, u32 addr, u32 data);
  17. int nvkm_instobj_new(struct nvkm_instmem *, u32 size, u32 align, bool zero,
  18. struct nvkm_memory **);
  19. int nv04_instmem_new(struct nvkm_device *, int, struct nvkm_instmem **);
  20. int nv40_instmem_new(struct nvkm_device *, int, struct nvkm_instmem **);
  21. int nv50_instmem_new(struct nvkm_device *, int, struct nvkm_instmem **);
  22. int gk20a_instmem_new(struct nvkm_device *, int, struct nvkm_instmem **);
  23. #endif