Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f474be9 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/core/object: separate oclass data out into its own header



Want to be able to include this from core/device.h without pulling in
core/object.h.

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent bbb10e63
Loading
Loading
Loading
Loading
+1 −27
Original line number Diff line number Diff line
#ifndef __NVKM_OBJECT_H__
#define __NVKM_OBJECT_H__
#include <core/os.h>
#include <core/debug.h>
#include <core/oclass.h>
struct nvkm_event;
struct nvkm_gpuobj;
struct nvkm_oclass;

struct nvkm_object {
	const struct nvkm_object_func *func;
@@ -66,28 +64,4 @@ bool nvkm_object_insert(struct nvkm_object *);
void nvkm_object_remove(struct nvkm_object *);
struct nvkm_object *nvkm_object_search(struct nvkm_client *, u64 object,
				       const struct nvkm_object_func *);

struct nvkm_sclass {
	int minver;
	int maxver;
	s32 oclass;
	const struct nvkm_object_func *func;
	int (*ctor)(const struct nvkm_oclass *, void *data, u32 size,
		    struct nvkm_object **);
};

struct nvkm_oclass {
	int (*ctor)(const struct nvkm_oclass *, void *data, u32 size,
		    struct nvkm_object **);
	struct nvkm_sclass base;
	const void *priv;
	const void *engn;
	u32 handle;
	u8  route;
	u64 token;
	u64 object;
	struct nvkm_client *client;
	struct nvkm_object *parent;
	struct nvkm_engine *engine;
};
#endif
+31 −0
Original line number Diff line number Diff line
#ifndef __NVKM_OCLASS_H__
#define __NVKM_OCLASS_H__
#include <core/os.h>
#include <core/debug.h>
struct nvkm_oclass;
struct nvkm_object;

struct nvkm_sclass {
	int minver;
	int maxver;
	s32 oclass;
	const struct nvkm_object_func *func;
	int (*ctor)(const struct nvkm_oclass *, void *data, u32 size,
		    struct nvkm_object **);
};

struct nvkm_oclass {
	int (*ctor)(const struct nvkm_oclass *, void *data, u32 size,
		    struct nvkm_object **);
	struct nvkm_sclass base;
	const void *priv;
	const void *engn;
	u32 handle;
	u8  route;
	u64 token;
	u64 object;
	struct nvkm_client *client;
	struct nvkm_object *parent;
	struct nvkm_engine *engine;
};
#endif