On Wed, 12 Sep 2018 at 20:59, Takashi Iwai <ti...@suse.de> wrote: > > 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. Martin,
Any thoughts on this? Ben. > > 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.bl...@suse.com> > Signed-off-by: Takashi Iwai <ti...@suse.de> > > --- > 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.18.0 > > _______________________________________________ > Nouveau mailing list > nouv...@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/nouveau _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel