1 /* SPDX-License-Identifier: MIT */
2 #ifndef __NVKM_DEVICE_PRIV_H__
3 #define __NVKM_DEVICE_PRIV_H__
4 #include <core/device.h>
5 
6 #include <subdev/acr.h>
7 #include <subdev/bar.h>
8 #include <subdev/bios.h>
9 #include <subdev/bus.h>
10 #include <subdev/clk.h>
11 #include <subdev/devinit.h>
12 #include <subdev/fault.h>
13 #include <subdev/fb.h>
14 #include <subdev/fuse.h>
15 #include <subdev/gpio.h>
16 #include <subdev/gsp.h>
17 #include <subdev/i2c.h>
18 #include <subdev/iccsense.h>
19 #include <subdev/instmem.h>
20 #include <subdev/ltc.h>
21 #include <subdev/mc.h>
22 #include <subdev/mmu.h>
23 #include <subdev/mxm.h>
24 #include <subdev/pci.h>
25 #include <subdev/pmu.h>
26 #include <subdev/privring.h>
27 #include <subdev/therm.h>
28 #include <subdev/timer.h>
29 #include <subdev/top.h>
30 #include <subdev/volt.h>
31 
32 #include <engine/bsp.h>
33 #include <engine/ce.h>
34 #include <engine/cipher.h>
35 #include <engine/disp.h>
36 #include <engine/dma.h>
37 #include <engine/fifo.h>
38 #include <engine/gr.h>
39 #include <engine/mpeg.h>
40 #include <engine/mspdec.h>
41 #include <engine/msppp.h>
42 #include <engine/msvld.h>
43 #include <engine/nvenc.h>
44 #include <engine/nvdec.h>
45 #include <engine/pm.h>
46 #include <engine/sec.h>
47 #include <engine/sec2.h>
48 #include <engine/sw.h>
49 #include <engine/vic.h>
50 #include <engine/vp.h>
51 
52 int  nvkm_device_ctor(const struct nvkm_device_func *,
53 		      const struct nvkm_device_quirk *,
54 		      struct device *, enum nvkm_device_type, u64 handle,
55 		      const char *name, const char *cfg, const char *dbg,
56 		      bool detect, bool mmio, u64 subdev_mask,
57 		      struct nvkm_device *);
58 int  nvkm_device_init(struct nvkm_device *);
59 int  nvkm_device_fini(struct nvkm_device *, bool suspend);
60 #endif
61