Sasha Levin
2019-Feb-09 18:47 UTC
[Nouveau] [PATCH AUTOSEL 4.20 36/42] drm/nouveau: Don't disable polling in fallback mode
From: Takashi Iwai <tiwai at suse.de> [ Upstream commit 118780066e30c34de3d9349710b51780bfa0ba83 ] When a fan is controlled via linear fallback without cstate, we shouldn't stop polling. Otherwise it won't be adjusted again and keeps running at an initial crazy pace. Fixes: 800efb4c2857 ("drm/nouveau/drm/therm/fan: add a fallback if no fan control is specified in the vbios") Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1103356 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107447 Reported-by: Thomas Blume <thomas.blume at suse.com> Signed-off-by: Takashi Iwai <tiwai at suse.de> Reviewed-by: Martin Peres <martin.peres at free.fr> Signed-off-by: Ben Skeggs <bskeggs at redhat.com> Signed-off-by: Sasha Levin <sashal at kernel.org> --- drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c b/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c index 3695cde669f8..07914e36939e 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c @@ -132,11 +132,12 @@ nvkm_therm_update(struct nvkm_therm *therm, int mode) duty = nvkm_therm_update_linear(therm); break; case NVBIOS_THERM_FAN_OTHER: - if (therm->cstate) + if (therm->cstate) { duty = therm->cstate; - else + poll = false; + } else { duty = nvkm_therm_update_linear_fallback(therm); - poll = false; + } break; } immd = false; -- 2.19.1
Possibly Parallel Threads
- [PATCH AUTOSEL 4.19 25/28] drm/nouveau: Don't disable polling in fallback mode
- [PATCH] drm/nouveau: Don't disable polling in fallback mode
- [PATCH] drm/nouveau: Don't disable polling in fallback mode
- [PATCH] drm/nouveau: Don't disable polling in fallback mode
- [PATCH] drm/nouveau: Don't disable polling in fallback mode