]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - drivers/gpu/drm/nouveau/include/nvkm/subdev/mc.h
Merge remote-tracking branches 'asoc/topic/dwc', 'asoc/topic/fallthrough', 'asoc...
[mirror_ubuntu-bionic-kernel.git] / drivers / gpu / drm / nouveau / include / nvkm / subdev / mc.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
d7e5fcd2
BS
2#ifndef __NVKM_MC_H__
3#define __NVKM_MC_H__
7d9115de 4#include <core/subdev.h>
7d9115de 5
d7e5fcd2 6struct nvkm_mc {
54dcadd5 7 const struct nvkm_mc_func *func;
2ca0ddbc 8 struct nvkm_subdev subdev;
7d9115de
BS
9};
10
3c2a536b
BS
11void nvkm_mc_enable(struct nvkm_device *, enum nvkm_devidx);
12void nvkm_mc_disable(struct nvkm_device *, enum nvkm_devidx);
c599dd4b 13bool nvkm_mc_enabled(struct nvkm_device *, enum nvkm_devidx);
3c2a536b 14void nvkm_mc_reset(struct nvkm_device *, enum nvkm_devidx);
d3981190
BS
15void nvkm_mc_intr(struct nvkm_device *, bool *handled);
16void nvkm_mc_intr_unarm(struct nvkm_device *);
17void nvkm_mc_intr_rearm(struct nvkm_device *);
66adbfb0 18void nvkm_mc_intr_mask(struct nvkm_device *, enum nvkm_devidx, bool enable);
d3981190 19void nvkm_mc_unk260(struct nvkm_device *, u32 data);
7d9115de 20
54dcadd5 21int nv04_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
667e99ab 22int nv11_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
79360b7d 23int nv17_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
54dcadd5 24int nv44_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
54dcadd5 25int nv50_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
73549020 26int g84_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
54dcadd5 27int g98_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
88c0de2c 28int gt215_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
54dcadd5 29int gf100_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
33537d6f 30int gk104_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
54dcadd5 31int gk20a_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
be61c54c 32int gp100_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
b9a995de 33int gp10b_mc_new(struct nvkm_device *, int, struct nvkm_mc **);
7d9115de 34#endif