drm/nouveau/therm: survive to suspend/resume cycles
commitc4a62a766062c268d08c1aacf2e18e057e277db4
authorMartin Peres <martin.peres@labri.fr>
Mon, 12 Aug 2013 02:48:52 +0000 (11 22:48 -0400)
committerBen Skeggs <bskeggs@redhat.com>
Wed, 4 Sep 2013 03:46:52 +0000 (4 13:46 +1000)
tree381ecbe9bcdc9c009e359720a281b235c78e8760
parentb925a75d6729cec8debd0c378b354d8c228b36aa
drm/nouveau/therm: survive to suspend/resume cycles

Therm uses 3 ptimer alarms. Two to drive the fan and one for polling the
temperature. When suspending/resuming, alarms will never be fired.
As we are checking if there isn't an alarm pending before rescheduling
another one, we end up never checking temperature or updating the
fan speed.

This commit also adds debug messages to be able to spot more easily
if this case happens again in the future. Sorry for the spam if you
activate the debug level though.

Tested-by: Dash Four <mr.dash.four@googlemail.com>
v2:
- fix temperature polling too

Signed-off-by: Martin Peres <martin.peres@labri.fr>
Tested-by: Martin Peres <martin.peres@labri.fr>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
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
drivers/gpu/drm/nouveau/core/subdev/therm/temp.c