0001
0002 #ifndef __GF100_BAR_H__
0003 #define __GF100_BAR_H__
0004 #define gf100_bar(p) container_of((p), struct gf100_bar, base)
0005 #include "priv.h"
0006
0007 struct gf100_barN {
0008 struct nvkm_memory *inst;
0009 struct nvkm_vmm *vmm;
0010 };
0011
0012 struct gf100_bar {
0013 struct nvkm_bar base;
0014 bool bar2_halve;
0015 struct gf100_barN bar[2];
0016 };
0017
0018 int gf100_bar_new_(const struct nvkm_bar_func *, struct nvkm_device *, enum nvkm_subdev_type,
0019 int, struct nvkm_bar **);
0020 void *gf100_bar_dtor(struct nvkm_bar *);
0021 int gf100_bar_oneinit(struct nvkm_bar *);
0022 void gf100_bar_bar1_init(struct nvkm_bar *);
0023 void gf100_bar_bar1_wait(struct nvkm_bar *);
0024 struct nvkm_vmm *gf100_bar_bar1_vmm(struct nvkm_bar *);
0025 void gf100_bar_bar2_init(struct nvkm_bar *);
0026 struct nvkm_vmm *gf100_bar_bar2_vmm(struct nvkm_bar *);
0027 #endif