1 /* SPDX-License-Identifier: GPL-2.0 */
4 #include <core/subdev.h>
7 const struct nvkm_mc_func
*func
;
8 struct nvkm_subdev subdev
;
11 void nvkm_mc_enable(struct nvkm_device
*, enum nvkm_devidx
);
12 void nvkm_mc_disable(struct nvkm_device
*, enum nvkm_devidx
);
13 bool nvkm_mc_enabled(struct nvkm_device
*, enum nvkm_devidx
);
14 void nvkm_mc_reset(struct nvkm_device
*, enum nvkm_devidx
);
15 void nvkm_mc_intr(struct nvkm_device
*, bool *handled
);
16 void nvkm_mc_intr_unarm(struct nvkm_device
*);
17 void nvkm_mc_intr_rearm(struct nvkm_device
*);
18 void nvkm_mc_intr_mask(struct nvkm_device
*, enum nvkm_devidx
, bool enable
);
19 void nvkm_mc_unk260(struct nvkm_device
*, u32 data
);
21 int nv04_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
22 int nv11_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
23 int nv17_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
24 int nv44_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
25 int nv50_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
26 int g84_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
27 int g98_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
28 int gt215_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
29 int gf100_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
30 int gk104_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
31 int gk20a_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
32 int gp100_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);
33 int gp10b_mc_new(struct nvkm_device
*, int, struct nvkm_mc
**);