drm/nouveau/mc/ga100: switch to using NV_PMC_DEVICE_ENABLE
- NV_PMC_ENABLE still exists, but we don't touch anything in it yet Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
This commit is contained in:
parent
ebb195dbb3
commit
565bfaf1f2
@ -21,11 +21,52 @@
|
||||
*/
|
||||
#include "priv.h"
|
||||
|
||||
static void
|
||||
ga100_mc_device_disable(struct nvkm_mc *mc, u32 mask)
|
||||
{
|
||||
struct nvkm_device *device = mc->subdev.device;
|
||||
|
||||
nvkm_mask(device, 0x000600, mask, 0x00000000);
|
||||
nvkm_rd32(device, 0x000600);
|
||||
nvkm_rd32(device, 0x000600);
|
||||
}
|
||||
|
||||
static void
|
||||
ga100_mc_device_enable(struct nvkm_mc *mc, u32 mask)
|
||||
{
|
||||
struct nvkm_device *device = mc->subdev.device;
|
||||
|
||||
nvkm_mask(device, 0x000600, mask, mask);
|
||||
nvkm_rd32(device, 0x000600);
|
||||
nvkm_rd32(device, 0x000600);
|
||||
}
|
||||
|
||||
static bool
|
||||
ga100_mc_device_enabled(struct nvkm_mc *mc, u32 mask)
|
||||
{
|
||||
return (nvkm_rd32(mc->subdev.device, 0x000600) & mask) == mask;
|
||||
}
|
||||
|
||||
const struct nvkm_mc_device_func
|
||||
ga100_mc_device = {
|
||||
.enabled = ga100_mc_device_enabled,
|
||||
.enable = ga100_mc_device_enable,
|
||||
.disable = ga100_mc_device_disable,
|
||||
};
|
||||
|
||||
static void
|
||||
ga100_mc_init(struct nvkm_mc *mc)
|
||||
{
|
||||
struct nvkm_device *device = mc->subdev.device;
|
||||
|
||||
nvkm_wr32(device, 0x000200, 0xffffffff);
|
||||
nvkm_wr32(device, 0x000600, 0xffffffff);
|
||||
}
|
||||
|
||||
static const struct nvkm_mc_func
|
||||
ga100_mc = {
|
||||
.init = nv50_mc_init,
|
||||
.device = &nv04_mc_device,
|
||||
.reset = gk104_mc_reset,
|
||||
.init = ga100_mc_init,
|
||||
.device = &ga100_mc_device,
|
||||
};
|
||||
|
||||
int
|
||||
|
Loading…
x
Reference in New Issue
Block a user