1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __GF100_BAR_H__ 3 #define __GF100_BAR_H__ 4 #define gf100_bar(p) container_of((p), struct gf100_bar, base) 5 #include "priv.h" 6 7 struct gf100_bar_vm { 8 struct nvkm_memory *mem; 9 struct nvkm_gpuobj *pgd; 10 struct nvkm_vm *vm; 11 }; 12 13 struct gf100_bar { 14 struct nvkm_bar base; 15 bool bar2_halve; 16 struct gf100_bar_vm bar[2]; 17 }; 18 19 int gf100_bar_new_(const struct nvkm_bar_func *, struct nvkm_device *, 20 int, struct nvkm_bar **); 21 void *gf100_bar_dtor(struct nvkm_bar *); 22 int gf100_bar_oneinit(struct nvkm_bar *); 23 int gf100_bar_init(struct nvkm_bar *); 24 int gf100_bar_umap(struct nvkm_bar *, u64, int, struct nvkm_vma *); 25 #endif 26