77 lines · c
1/* SPDX-License-Identifier: MIT */2#ifndef __NVKM_FB_RAM_PRIV_H__3#define __NVKM_FB_RAM_PRIV_H__4#include "priv.h"5 6int nvkm_ram_ctor(const struct nvkm_ram_func *, struct nvkm_fb *,7 enum nvkm_ram_type, u64 size, struct nvkm_ram *);8int nvkm_ram_new_(const struct nvkm_ram_func *, struct nvkm_fb *,9 enum nvkm_ram_type, u64 size, struct nvkm_ram **);10void nvkm_ram_del(struct nvkm_ram **);11int nvkm_ram_init(struct nvkm_ram *);12 13extern const struct nvkm_ram_func nv04_ram_func;14 15int nv50_ram_ctor(const struct nvkm_ram_func *, struct nvkm_fb *,16 struct nvkm_ram *);17 18int gf100_ram_new_(const struct nvkm_ram_func *, struct nvkm_fb *,19 struct nvkm_ram **);20int gf100_ram_ctor(const struct nvkm_ram_func *, struct nvkm_fb *,21 struct nvkm_ram *);22u32 gf100_ram_probe_fbp(const struct nvkm_ram_func *,23 struct nvkm_device *, int, int *);24u32 gf100_ram_probe_fbp_amount(const struct nvkm_ram_func *, u32,25 struct nvkm_device *, int, int *);26u32 gf100_ram_probe_fbpa_amount(struct nvkm_device *, int);27int gf100_ram_init(struct nvkm_ram *);28int gf100_ram_calc(struct nvkm_ram *, u32);29int gf100_ram_prog(struct nvkm_ram *);30void gf100_ram_tidy(struct nvkm_ram *);31 32u32 gf108_ram_probe_fbp_amount(const struct nvkm_ram_func *, u32,33 struct nvkm_device *, int, int *);34 35int gk104_ram_new_(const struct nvkm_ram_func *, struct nvkm_fb *,36 struct nvkm_ram **);37void *gk104_ram_dtor(struct nvkm_ram *);38int gk104_ram_init(struct nvkm_ram *);39int gk104_ram_calc(struct nvkm_ram *, u32);40int gk104_ram_prog(struct nvkm_ram *);41void gk104_ram_tidy(struct nvkm_ram *);42 43u32 gm107_ram_probe_fbp(const struct nvkm_ram_func *,44 struct nvkm_device *, int, int *);45 46u32 gm200_ram_probe_fbp_amount(const struct nvkm_ram_func *, u32,47 struct nvkm_device *, int, int *);48 49int gp100_ram_init(struct nvkm_ram *);50 51/* RAM type-specific MR calculation routines */52int nvkm_sddr2_calc(struct nvkm_ram *);53int nvkm_sddr3_calc(struct nvkm_ram *);54int nvkm_gddr3_calc(struct nvkm_ram *);55int nvkm_gddr5_calc(struct nvkm_ram *, bool nuts);56 57int nv04_ram_new(struct nvkm_fb *, struct nvkm_ram **);58int nv10_ram_new(struct nvkm_fb *, struct nvkm_ram **);59int nv1a_ram_new(struct nvkm_fb *, struct nvkm_ram **);60int nv20_ram_new(struct nvkm_fb *, struct nvkm_ram **);61int nv40_ram_new(struct nvkm_fb *, struct nvkm_ram **);62int nv41_ram_new(struct nvkm_fb *, struct nvkm_ram **);63int nv44_ram_new(struct nvkm_fb *, struct nvkm_ram **);64int nv49_ram_new(struct nvkm_fb *, struct nvkm_ram **);65int nv4e_ram_new(struct nvkm_fb *, struct nvkm_ram **);66int nv50_ram_new(struct nvkm_fb *, struct nvkm_ram **);67int gt215_ram_new(struct nvkm_fb *, struct nvkm_ram **);68int mcp77_ram_new(struct nvkm_fb *, struct nvkm_ram **);69int gf100_ram_new(struct nvkm_fb *, struct nvkm_ram **);70int gf108_ram_new(struct nvkm_fb *, struct nvkm_ram **);71int gk104_ram_new(struct nvkm_fb *, struct nvkm_ram **);72int gm107_ram_new(struct nvkm_fb *, struct nvkm_ram **);73int gm200_ram_new(struct nvkm_fb *, struct nvkm_ram **);74int gp100_ram_new(struct nvkm_fb *, struct nvkm_ram **);75int gp102_ram_new(struct nvkm_fb *, struct nvkm_ram **);76#endif77