drm/nouveau/mc: implement support for PTOP reset info

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Ben Skeggs 2016-04-08 17:24:40 +10:00
parent 70b01f07db
commit 583f8e4ea2
1 changed files with 8 additions and 5 deletions

View File

@ -24,6 +24,7 @@
#include "priv.h"
#include <core/option.h>
#include <subdev/top.h>
void
nvkm_mc_unk260(struct nvkm_mc *mc, u32 data)
@ -82,12 +83,14 @@ nvkm_mc_reset_(struct nvkm_mc *mc, enum nvkm_devidx devidx)
{
struct nvkm_device *device = mc->subdev.device;
const struct nvkm_mc_map *map;
u64 pmc_enable = 0;
u64 pmc_enable;
for (map = mc->func->reset; map && map->stat; map++) {
if (map->unit == devidx) {
pmc_enable = map->stat;
break;
if (!(pmc_enable = nvkm_top_reset(device->top, devidx))) {
for (map = mc->func->reset; map && map->stat; map++) {
if (map->unit == devidx) {
pmc_enable = map->stat;
break;
}
}
}