Browse Source

drm/nouveau/pmu: execute reset before running devinit

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Ben Skeggs 8 years ago
parent
commit
2f524aa0b7
1 changed files with 8 additions and 0 deletions
  1. 8 0
      drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c

+ 8 - 0
drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c

@@ -96,6 +96,13 @@ nvkm_pmu_reset(struct nvkm_pmu *pmu)
 	return 0;
 }
 
+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)
 {
@@ -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,