Re: [PATCH] Acerhdf: fix fan control for BIOS 3309

From: Borislav Petkov
Date: Mon Jul 06 2009 - 03:44:07 EST


Hi Peter,

On Sun, Jul 05, 2009 at 06:51:13PM +0200, Peter Feuerer wrote:
> >With BIOS update v3309, the Aspire One has had some changes to how
> >the fan is being controlled. Reads to the fanreg (0x55) do not simply
> >return the on/off values of the fan anymore but rather a different
> >fan stage based on the current temperature. Empirically, I could
> >observe the fan stage being 0x1 when booting the machine, then the
> >temperature went up and the BIOS switched the fan to stage 0x2, making
> >it rotate faster with final stage being fan state 0x3, aka max.
>
> I think it was already like that before v3309. But in my opinion it
> doesn't matter how fast the fan spins. As soon as it's spinning it's
> making too much noise. That's why I like to use only two states for
> the fan, "on" (noisy, doesn't matter how fast it's spinning) and
> "off" (quiet ;))

Agreed. I'd like to keep that in the patch description though so that we
have that behavior documented somewhere.

> >This requires some changes to the controlling code so that it can
> >still be done adequately. Also, the OFF switch has changed from 0x21
> >to 0x20. It seems almost as if they're using the least significant
> >nibble of the command written to the ioport for the different fan
> >stages.
>
> I've been developping acerhdf with BIOS v3309 since the very
> beginning. And it was working fine with 0x21 all the time. I'm
> going to do some further inverstigations next few days. Thanks for
> reporting!

The thing I'm observing here with the 0x21 command is that whenever it
is written into the ->fanreg, the fan gets turned on for maybe a second
or less and then off again. The 0x20 keeps it off just fine. What does
your BIOS version string say, here it is:

[33340.535861] acerhdf: Acer Aspire One Fan driver, v.0.5.14
[33340.537078] acerhdf: BIOS info: Acer v0.3309, product: AOA150

--
Regards/Gruss,
Boris.
--
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/