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