Re: [PATCH 3/3] i8k: Remove laptop specific config data (fan_mult, fan_max) from driver

Pali Rohár
2014-12-18T11:09:05Z

[-- Attachment #1: Type: Text/Plain, Size: 1734 bytes --]

On Wednesday 10 December 2014 14:32:16 Gabriele Mazzotta wrote:
> On Wednesday 10 December 2014 12:51:30 Pali Rohár wrote:
> > On Tuesday 09 December 2014 21:07:01 Pali Rohár wrote:
> > > Now we have autodetection code for fan multiplier and
> > > maximal fan speed so we do not need to have those
> > > constants for each laptop in kernel driver code.
> > >
> > > Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
> > > ---
> > > !!!Please do not apply this patch until all affected
> > > machines will be tested!!!
> > >
> > > I tested autodetection code only on Dell Latitude E6440
> > > (where it worked). Other machines which needs to be
> > > tested:
> > >
> > > Dell Latitude D520
> > > Dell Latitude E6540
> > > Dell Precision WorkStation 490
> > > Dell Studio
> > > Dell XPS M140 (MXC051)
> > > ---
> >
> > Can somebody else with dell laptops test this patch series?
>
> i8k_get_fan_nominal_rpm() returns -22 on my XPS13, so nothing
> changed with this patch series applied.
>
> Gabriele

So your BIOS cannot report nominal_rpm and because your machine
is not in dmi list, all 3 patches do nothing for your machine.

But you need to set multiplier to 1, right?

What about this patch? (on top of 3/3)

--- a/drivers/char/i8k.c
+++ b/drivers/char/i8k.c
@@ -850,6 +850,10 @@ static int __init i8k_probe(void)
*/
for (fan = 0; fan < I8K_FAN_COUNT; ++fan) {
i8k_fan_mult[fan] = I8K_FAN_DEFAULT_MULT;
+ if (i8k_get_fan_rpm(fan) > I8K_FAN_MAX_RPM) {
+ i8k_fan_mult[fan] = 1;
+ continue;
+ }
for (val = 0; val < 256; ++val) {
ret = i8k_get_fan_nominal_rpm(fan, val);
if (ret > I8K_FAN_MAX_RPM) {

--
Pali Rohár
pali.rohar@gmail.com

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]