drm/nouveau/pm: hook up fanspeed get/set if they're present
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
diff --git a/drivers/gpu/drm/nouveau/nouveau_pm.c b/drivers/gpu/drm/nouveau/nouveau_pm.c
index a539fd2..607e496 100644
--- a/drivers/gpu/drm/nouveau/nouveau_pm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_pm.c
@@ -64,6 +64,12 @@
if (perflvl == pm->cur)
return 0;
+ if (pm->fanspeed_set && perflvl->fanspeed) {
+ ret = pm->fanspeed_set(dev, perflvl->fanspeed);
+ if (ret)
+ NV_ERROR(dev, "set fanspeed failed: %d\n", ret);
+ }
+
if (pm->voltage.supported && pm->voltage_set && perflvl->volt_min) {
ret = pm->voltage_set(dev, perflvl->volt_min);
if (ret) {
@@ -161,6 +167,9 @@
}
}
+ if (pm->fanspeed_get)
+ perflvl->fanspeed = pm->fanspeed_get(dev);
+
return 0;
}