ramht.h (801B)
1/* SPDX-License-Identifier: MIT */ 2#ifndef __NVKM_RAMHT_H__ 3#define __NVKM_RAMHT_H__ 4#include <core/gpuobj.h> 5struct nvkm_object; 6 7struct nvkm_ramht_data { 8 struct nvkm_gpuobj *inst; 9 int chid; 10 u32 handle; 11}; 12 13struct nvkm_ramht { 14 struct nvkm_device *device; 15 struct nvkm_gpuobj *parent; 16 struct nvkm_gpuobj *gpuobj; 17 int size; 18 int bits; 19 struct nvkm_ramht_data data[]; 20}; 21 22int nvkm_ramht_new(struct nvkm_device *, u32 size, u32 align, 23 struct nvkm_gpuobj *, struct nvkm_ramht **); 24void nvkm_ramht_del(struct nvkm_ramht **); 25int nvkm_ramht_insert(struct nvkm_ramht *, struct nvkm_object *, 26 int chid, int addr, u32 handle, u32 context); 27void nvkm_ramht_remove(struct nvkm_ramht *, int cookie); 28struct nvkm_gpuobj * 29nvkm_ramht_search(struct nvkm_ramht *, int chid, u32 handle); 30#endif