All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] drm/nouveau/therm: turn on a fan only when crossing threshold in positive direction
@ 2013-02-03 20:07 Marcin Slusarz
       [not found] ` <1359922077-3347-1-git-send-email-marcin.slusarz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: Marcin Slusarz @ 2013-02-03 20:07 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW; +Cc: Martin Peres

+ the same for shutdown threshold - seems impossible, but shutdown can fail.

Signed-off-by: Marcin Slusarz <marcin.slusarz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
---
 drivers/gpu/drm/nouveau/core/subdev/therm/temp.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c b/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c
index bf9b3ce..8f27b44 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c
+++ b/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c
@@ -105,7 +105,7 @@ void nouveau_therm_sensor_event(struct nouveau_therm *therm,
 		return;
 
 	if (dir == NOUVEAU_THERM_THRS_FALLING)
-		nv_info(therm, "temperature (%u C) went bellow the '%s' threshold\n",
+		nv_info(therm, "temperature (%u C) went below the '%s' threshold\n",
 			temperature, thresolds[thrs]);
 	else
 		nv_info(therm, "temperature (%u C) hit the '%s' threshold\n",
@@ -114,8 +114,10 @@ void nouveau_therm_sensor_event(struct nouveau_therm *therm,
 	active = (dir == NOUVEAU_THERM_THRS_RISING);
 	switch (thrs) {
 	case NOUVEAU_THERM_THRS_FANBOOST:
-		nouveau_therm_fan_set(therm, true, 100);
-		nouveau_therm_mode(therm, NOUVEAU_THERM_CTRL_AUTO);
+		if (active) {
+			nouveau_therm_fan_set(therm, true, 100);
+			nouveau_therm_mode(therm, NOUVEAU_THERM_CTRL_AUTO);
+		}
 		break;
 	case NOUVEAU_THERM_THRS_DOWNCLOCK:
 		if (priv->emergency.downclock)
@@ -126,7 +128,8 @@ void nouveau_therm_sensor_event(struct nouveau_therm *therm,
 			priv->emergency.pause(therm, active);
 		break;
 	case NOUVEAU_THERM_THRS_SHUTDOWN:
-		orderly_poweroff(true);
+		if (active)
+			orderly_poweroff(true);
 		break;
 	case NOUVEAU_THERM_THRS_NR:
 		break;
-- 
1.8.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH 1/3] drm/nouveau/therm: turn on a fan only when crossing threshold in positive direction
       [not found] ` <1359922077-3347-1-git-send-email-marcin.slusarz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
@ 2013-02-04 12:22   ` Martin Peres
  0 siblings, 0 replies; 2+ messages in thread
From: Martin Peres @ 2013-02-04 12:22 UTC (permalink / raw)
  To: Marcin Slusarz; +Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

On 03/02/2013 21:07, Marcin Slusarz wrote:
> + the same for shutdown threshold - seems impossible, but shutdown can fail.
>
> Signed-off-by: Marcin Slusarz <marcin.slusarz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Looks good. Please add my signed-off-by

Signed-off-by: Martin Peres <martin.peres-BktLLJ5BOkI@public.gmane.org>
> ---
>   drivers/gpu/drm/nouveau/core/subdev/therm/temp.c | 11 +++++++----
>   1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c b/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c
> index bf9b3ce..8f27b44 100644
> --- a/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c
> +++ b/drivers/gpu/drm/nouveau/core/subdev/therm/temp.c
> @@ -105,7 +105,7 @@ void nouveau_therm_sensor_event(struct nouveau_therm *therm,
>   		return;
>   
>   	if (dir == NOUVEAU_THERM_THRS_FALLING)
> -		nv_info(therm, "temperature (%u C) went bellow the '%s' threshold\n",
> +		nv_info(therm, "temperature (%u C) went below the '%s' threshold\n",
>   			temperature, thresolds[thrs]);
>   	else
>   		nv_info(therm, "temperature (%u C) hit the '%s' threshold\n",
> @@ -114,8 +114,10 @@ void nouveau_therm_sensor_event(struct nouveau_therm *therm,
>   	active = (dir == NOUVEAU_THERM_THRS_RISING);
>   	switch (thrs) {
>   	case NOUVEAU_THERM_THRS_FANBOOST:
> -		nouveau_therm_fan_set(therm, true, 100);
> -		nouveau_therm_mode(therm, NOUVEAU_THERM_CTRL_AUTO);
> +		if (active) {
> +			nouveau_therm_fan_set(therm, true, 100);
> +			nouveau_therm_mode(therm, NOUVEAU_THERM_CTRL_AUTO);
> +		}
>   		break;
>   	case NOUVEAU_THERM_THRS_DOWNCLOCK:
>   		if (priv->emergency.downclock)
> @@ -126,7 +128,8 @@ void nouveau_therm_sensor_event(struct nouveau_therm *therm,
>   			priv->emergency.pause(therm, active);
>   		break;
>   	case NOUVEAU_THERM_THRS_SHUTDOWN:
> -		orderly_poweroff(true);
> +		if (active)
> +			orderly_poweroff(true);
>   		break;
>   	case NOUVEAU_THERM_THRS_NR:
>   		break;

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-02-04 12:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-03 20:07 [PATCH 1/3] drm/nouveau/therm: turn on a fan only when crossing threshold in positive direction Marcin Slusarz
     [not found] ` <1359922077-3347-1-git-send-email-marcin.slusarz-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-02-04 12:22   ` Martin Peres

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.