1#ifndef __NVKM_OCLASS_H__
2#define __NVKM_OCLASS_H__
3#include <core/os.h>
4#include <core/debug.h>
5struct nvkm_oclass;
6struct nvkm_object;
7
8struct nvkm_sclass {
9	int minver;
10	int maxver;
11	s32 oclass;
12	const struct nvkm_object_func *func;
13	int (*ctor)(const struct nvkm_oclass *, void *data, u32 size,
14		    struct nvkm_object **);
15};
16
17struct nvkm_oclass {
18	int (*ctor)(const struct nvkm_oclass *, void *data, u32 size,
19		    struct nvkm_object **);
20	struct nvkm_sclass base;
21	const void *priv;
22	const void *engn;
23	u32 handle;
24	u8  route;
25	u64 token;
26	u64 object;
27	struct nvkm_client *client;
28	struct nvkm_object *parent;
29	struct nvkm_engine *engine;
30};
31#endif
32