summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/nouveau/core/subdev/therm/priv.h
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2012-12-04 13:25:26 +1000
committerBen Skeggs <bskeggs@redhat.com>2013-02-20 16:00:16 +1000
commitd639b4f5ba5f1bbdfbba920e1deb035a1bed83ae (patch)
treeddbb8d9db0e612f8628d58d657ce4b8f03a90cb4 /drivers/gpu/drm/nouveau/core/subdev/therm/priv.h
parent5f066c32a50eac584c0c8c19d8d5e38714f7c574 (diff)
downloadop-kernel-dev-d639b4f5ba5f1bbdfbba920e1deb035a1bed83ae.zip
op-kernel-dev-d639b4f5ba5f1bbdfbba920e1deb035a1bed83ae.tar.gz
drm/nouveau/therm: collect fan tach info in common fan constructor
This info will be used by two more implementations in upcoming commits. Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Martin Peres <martin.peres@labri.fr>
Diffstat (limited to 'drivers/gpu/drm/nouveau/core/subdev/therm/priv.h')
-rw-r--r--drivers/gpu/drm/nouveau/core/subdev/therm/priv.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/core/subdev/therm/priv.h b/drivers/gpu/drm/nouveau/core/subdev/therm/priv.h
index 64f4a4a..33fbc59 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/therm/priv.h
+++ b/drivers/gpu/drm/nouveau/core/subdev/therm/priv.h
@@ -28,6 +28,7 @@
#include <subdev/therm.h>
#include <subdev/bios/extdev.h>
+#include <subdev/bios/gpio.h>
#include <subdev/bios/perf.h>
#include <subdev/bios/therm.h>
@@ -44,6 +45,8 @@ struct nouveau_therm_priv {
enum nouveau_therm_fan_mode mode;
int percent;
+ struct dcb_gpio_func tach;
+
int (*pwm_get)(struct nouveau_therm *, int line, u32*, u32*);
int (*pwm_set)(struct nouveau_therm *, int line, u32, u32);
int (*pwm_clock)(struct nouveau_therm *);
@@ -70,9 +73,11 @@ int nouveau_therm_fan_user_set(struct nouveau_therm *therm, int percent);
int nouveau_therm_fan_set_mode(struct nouveau_therm *therm,
enum nouveau_therm_fan_mode mode);
-
int nouveau_therm_fan_sense(struct nouveau_therm *therm);
+int nv50_fan_pwm_get(struct nouveau_therm *, int, u32 *, u32 *);
+int nv50_fan_pwm_set(struct nouveau_therm *, int, u32, u32);
+int nv50_fan_pwm_clock(struct nouveau_therm *);
int nv50_temp_get(struct nouveau_therm *therm);
#endif
OpenPOWER on IntegriCloud