Re: [PATCH] powermac: thermal control turns system off in normaltemperature conditions

From: Benjamin Herrenschmidt
Date: Sun Aug 30 2009 - 17:23:19 EST


On Sun, 2009-08-30 at 20:54 +0200, Bartlomiej Zolnierkiewicz wrote:
> From: Lyonel Vincent <lyonel@xxxxxxxx>
> Subject: [PATCH] powermac: thermal control turns system off in normal temperature conditions
>
> On certain PowerMacs, a module (therm_windtunnel) controls various
> thermal settings (it can report CPU/case temperature, change speed
> of internal fans, etc.)
>
> By default, the hardware thermal control has a temperature limit to
> protect the computer from damages (the default limit seems to be 80ÂC)
> but therm_windtunnel.c reduces it to an anormaly low value (65ÂC),
> which means that he computer will shut down randomly when hit by direct
> sun light or during summer (summer in France can be quite hot), actually
> possibly losing data instead of protecting it.
>
> The overheat limit in therm_windtunnel.c:253-254 should be set to 75ÂC
> and 70ÂC instead of 65ÂC and 60ÂC respectively.

Looks reasonable, thanks.

Ben.

> From: Lyonel Vincent <lyonel@xxxxxxxx>
> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
> ---
> Resurrected from Fedora's bugzilla (aka The Big Black Hole):
> https://bugzilla.redhat.com/show_bug.cgi?id=171937
>
> The patch itself seems perfectly valid to me
> (especially given comments in therm_windtunnel.c).
>
> drivers/macintosh/therm_windtunnel.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> Index: b/drivers/macintosh/therm_windtunnel.c
> ===================================================================
> --- a/drivers/macintosh/therm_windtunnel.c
> +++ b/drivers/macintosh/therm_windtunnel.c
> @@ -239,8 +239,8 @@ setup_hardware( void )
> * to be on the safe side (OSX doesn't)...
> */
> if( x.overheat_temp == (80 << 8) ) {
> - x.overheat_temp = 65 << 8;
> - x.overheat_hyst = 60 << 8;
> + x.overheat_temp = 75 << 8;
> + x.overheat_hyst = 70 << 8;
> write_reg( x.thermostat, 2, x.overheat_hyst, 2 );
> write_reg( x.thermostat, 3, x.overheat_temp, 2 );
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/