drm/nouveau/mc: add nvkm_mc_enabled() function
Add a function that allows us to query whether a given subdev is currently enabled or not. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
c1fcb14879
commit
c599dd4b70
|
@ -9,6 +9,7 @@ struct nvkm_mc {
|
|||
|
||||
void nvkm_mc_enable(struct nvkm_device *, enum nvkm_devidx);
|
||||
void nvkm_mc_disable(struct nvkm_device *, enum nvkm_devidx);
|
||||
bool nvkm_mc_enabled(struct nvkm_device *, enum nvkm_devidx);
|
||||
void nvkm_mc_reset(struct nvkm_device *, enum nvkm_devidx);
|
||||
void nvkm_mc_intr(struct nvkm_device *, bool *handled);
|
||||
void nvkm_mc_intr_unarm(struct nvkm_device *);
|
||||
|
|
|
@ -161,6 +161,16 @@ nvkm_mc_enable(struct nvkm_device *device, enum nvkm_devidx devidx)
|
|||
}
|
||||
}
|
||||
|
||||
bool
|
||||
nvkm_mc_enabled(struct nvkm_device *device, enum nvkm_devidx devidx)
|
||||
{
|
||||
u64 pmc_enable = nvkm_mc_reset_mask(device, false, devidx);
|
||||
|
||||
return (pmc_enable != 0) &&
|
||||
((nvkm_rd32(device, 0x000200) & pmc_enable) == pmc_enable);
|
||||
}
|
||||
|
||||
|
||||
static int
|
||||
nvkm_mc_fini(struct nvkm_subdev *subdev, bool suspend)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue