1 /* SPDX-License-Identifier: MIT */
2 #ifndef __NVKM_TOP_PRIV_H__
3 #define __NVKM_TOP_PRIV_H__
4 #define nvkm_top(p) container_of((p), struct nvkm_top, subdev)
5 #include <subdev/top.h>
6 
7 struct nvkm_top_func {
8 	int (*oneinit)(struct nvkm_top *);
9 };
10 
11 int nvkm_top_new_(const struct nvkm_top_func *, struct nvkm_device *,
12 		  int, struct nvkm_top **);
13 
14 struct nvkm_top_device {
15 	enum nvkm_devidx index;
16 	u32 addr;
17 	int fault;
18 	int engine;
19 	int runlist;
20 	int reset;
21 	int intr;
22 	struct list_head head;
23 };
24 
25 struct nvkm_top_device *nvkm_top_device_new(struct nvkm_top *);
26 #endif
27