OSDN Git Service

drm/nouveau/pmu: execute reset before running devinit
authorBen Skeggs <bskeggs@redhat.com>
Wed, 9 Nov 2016 00:39:08 +0000 (10:39 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Wed, 16 Nov 2016 23:50:36 +0000 (09:50 +1000)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c

index a843cef..e611ce8 100644 (file)
@@ -97,6 +97,13 @@ nvkm_pmu_reset(struct nvkm_pmu *pmu)
 }
 
 static int
+nvkm_pmu_preinit(struct nvkm_subdev *subdev)
+{
+       struct nvkm_pmu *pmu = nvkm_pmu(subdev);
+       return nvkm_pmu_reset(pmu);
+}
+
+static int
 nvkm_pmu_init(struct nvkm_subdev *subdev)
 {
        struct nvkm_pmu *pmu = nvkm_pmu(subdev);
@@ -115,6 +122,7 @@ nvkm_pmu_dtor(struct nvkm_subdev *subdev)
 static const struct nvkm_subdev_func
 nvkm_pmu = {
        .dtor = nvkm_pmu_dtor,
+       .preinit = nvkm_pmu_preinit,
        .init = nvkm_pmu_init,
        .fini = nvkm_pmu_fini,
        .intr = nvkm_pmu_intr,