xref: /openbmc/linux/drivers/gpu/drm/nouveau/nvkm/subdev/top/priv.h (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
1b7019ac5SIlia Mirkin /* SPDX-License-Identifier: MIT */
2eaebfcc3SBen Skeggs #ifndef __NVKM_TOP_PRIV_H__
3eaebfcc3SBen Skeggs #define __NVKM_TOP_PRIV_H__
4eaebfcc3SBen Skeggs #define nvkm_top(p) container_of((p), struct nvkm_top, subdev)
5eaebfcc3SBen Skeggs #include <subdev/top.h>
65f76f294SBen Skeggs 
75f76f294SBen Skeggs struct nvkm_top_func {
8*eec3f6dfSBen Skeggs 	int (*parse)(struct nvkm_top *);
95f76f294SBen Skeggs };
105f76f294SBen Skeggs 
11601c2a06SBen Skeggs int nvkm_top_new_(const struct nvkm_top_func *, struct nvkm_device *, enum nvkm_subdev_type, int,
12601c2a06SBen Skeggs 		  struct nvkm_top **);
135f76f294SBen Skeggs 
145f76f294SBen Skeggs struct nvkm_top_device *nvkm_top_device_new(struct nvkm_top *);
15eaebfcc3SBen Skeggs #endif
16