ram.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #ifndef __NVKM_FB_RAM_PRIV_H__
  2. #define __NVKM_FB_RAM_PRIV_H__
  3. #include "priv.h"
  4. int nvkm_ram_ctor(const struct nvkm_ram_func *, struct nvkm_fb *,
  5. enum nvkm_ram_type, u64 size, u32 tags,
  6. struct nvkm_ram *);
  7. int nvkm_ram_new_(const struct nvkm_ram_func *, struct nvkm_fb *,
  8. enum nvkm_ram_type, u64 size, u32 tags,
  9. struct nvkm_ram **);
  10. void nvkm_ram_del(struct nvkm_ram **);
  11. int nvkm_ram_init(struct nvkm_ram *);
  12. extern const struct nvkm_ram_func nv04_ram_func;
  13. int nv50_ram_ctor(const struct nvkm_ram_func *, struct nvkm_fb *,
  14. struct nvkm_ram *);
  15. int nv50_ram_get(struct nvkm_ram *, u64, u32, u32, u32, struct nvkm_mem **);
  16. void nv50_ram_put(struct nvkm_ram *, struct nvkm_mem **);
  17. void __nv50_ram_put(struct nvkm_ram *, struct nvkm_mem *);
  18. int gf100_ram_ctor(const struct nvkm_ram_func *, struct nvkm_fb *,
  19. u32, struct nvkm_ram *);
  20. int gf100_ram_get(struct nvkm_ram *, u64, u32, u32, u32, struct nvkm_mem **);
  21. void gf100_ram_put(struct nvkm_ram *, struct nvkm_mem **);
  22. int gk104_ram_init(struct nvkm_ram *ram);
  23. /* RAM type-specific MR calculation routines */
  24. int nvkm_sddr2_calc(struct nvkm_ram *);
  25. int nvkm_sddr3_calc(struct nvkm_ram *);
  26. int nvkm_gddr3_calc(struct nvkm_ram *);
  27. int nvkm_gddr5_calc(struct nvkm_ram *, bool nuts);
  28. int nv04_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  29. int nv10_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  30. int nv1a_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  31. int nv20_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  32. int nv40_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  33. int nv41_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  34. int nv44_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  35. int nv49_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  36. int nv4e_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  37. int nv50_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  38. int gt215_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  39. int mcp77_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  40. int gf100_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  41. int gk104_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  42. int gm107_ram_new(struct nvkm_fb *, struct nvkm_ram **);
  43. #endif