drm/nouveau/therm: implement automatic fan management
authorMartin Peres <martin.peres@labri.fr>
Wed, 5 Dec 2012 10:28:09 +0000 (20:28 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Wed, 20 Feb 2013 06:00:21 +0000 (16:00 +1000)
commit694472f4170c52a18893b0db8c8e3b865a85a457
tree5ef92e9ab2545ca3db9e931465dde8277c46c459
parentfa37e8dda2617d48fbc6b17dd6e986e7f4c2bc8b
drm/nouveau/therm: implement automatic fan management

v2: improved design but drops safety monitoring (to be in a later patch)
v3: fix locking and mode management
v4: gently fallback to the no-control mode when temperature cannot be got
    and use kernel-provided min/max macros
v5 (Ben Skeggs):
- rebased on my previous patches
v6: fix hysterisis management in trip-based auto fan management

This commit also forbids access to fan management to nvc0+ chipsets as
fan management is already taken care of my PDAEMON's default fw.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Martin Peres <martin.peres@labri.fr>
drivers/gpu/drm/nouveau/core/include/subdev/therm.h
drivers/gpu/drm/nouveau/core/subdev/therm/base.c
drivers/gpu/drm/nouveau/core/subdev/therm/fan.c
drivers/gpu/drm/nouveau/core/subdev/therm/priv.h