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