1 /* $NetBSD: client.h,v 1.2.6.2 2019/06/10 22:08:14 christos Exp $ */ 2 3 #ifndef __NVIF_CLIENT_H__ 4 #define __NVIF_CLIENT_H__ 5 6 #include <nvif/object.h> 7 8 struct nvif_client { 9 struct nvif_object object; 10 const struct nvif_driver *driver; 11 u64 version; 12 u8 route; 13 bool super; 14 }; 15 16 int nvif_client_init(const char *drv, const char *name, u64 device, 17 const char *cfg, const char *dbg, 18 struct nvif_client *); 19 void nvif_client_fini(struct nvif_client *); 20 int nvif_client_ioctl(struct nvif_client *, void *, u32); 21 int nvif_client_suspend(struct nvif_client *); 22 int nvif_client_resume(struct nvif_client *); 23 24 /*XXX*/ 25 #include <core/client.h> 26 #define nvxx_client(a) ({ \ 27 struct nvif_client *_client = (a); \ 28 (struct nvkm_client *)_client->object.priv; \ 29 }) 30 #endif 31