Linux-libre 4.19.123-gnu
[librecmc/linux-libre.git] / drivers / gpu / drm / nouveau / include / nvkm / subdev / top.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NVKM_TOP_H__
3 #define __NVKM_TOP_H__
4 #include <core/subdev.h>
5
6 struct nvkm_top {
7         const struct nvkm_top_func *func;
8         struct nvkm_subdev subdev;
9         struct list_head device;
10 };
11
12 u32 nvkm_top_reset(struct nvkm_device *, enum nvkm_devidx);
13 u32 nvkm_top_intr(struct nvkm_device *, u32 intr, u64 *subdevs);
14 u32 nvkm_top_intr_mask(struct nvkm_device *, enum nvkm_devidx);
15 int nvkm_top_fault_id(struct nvkm_device *, enum nvkm_devidx);
16 enum nvkm_devidx nvkm_top_fault(struct nvkm_device *, int fault);
17 enum nvkm_devidx nvkm_top_engine(struct nvkm_device *, int, int *runl, int *engn);
18
19 int gk104_top_new(struct nvkm_device *, int, struct nvkm_top **);
20 #endif