2007-12-05 03:01:20

by Mike Houston

[permalink] [raw]
Subject: 2.6.24-rc4 hwmon it87 probe fails

I finally got around to testing Linux 2.6.24 (2.6.24-rc4) and found
that the it87 driver fails to probe and consequently, my sensors no
longer work. This was fine with Linux 2.6.23.8 (the last kernel I was
using)

The necessary modules load, but:

it87: Found IT8718F chip at 0x290, revision 2
it87: in3 is VCC (+5V)
it87 it87.656: Failed to request region 0x290-0x297
it87: probe of it87.656 failed with error -16

Coretemp still works.

It appears it has something to do with the ioport range being
reserved for some reason:

system 00:01: ioport range 0x290-0x29f has been reserved

At least I don't see that happening on previous kernels.

In any case, the changes to it87.c itself don't appear to have caused
this. (CC'd hwmon maintainer anyways, my apologies if that was
inappropriate)

dmesg:
http://www.mikeserv.com/temp/dmesg-2.6.24-rc4.txt

config:
http://www.mikeserv.com/temp/config-2.6.24-rc4.txt

Thanks for any help or suggestions,

Mike Houston


2007-12-09 00:06:06

by Adrian Bunk

[permalink] [raw]
Subject: Re: 2.6.24-rc4 hwmon it87 probe fails

On Tue, Dec 04, 2007 at 09:51:54PM -0500, Mike Houston wrote:
> I finally got around to testing Linux 2.6.24 (2.6.24-rc4) and found
> that the it87 driver fails to probe and consequently, my sensors no
> longer work. This was fine with Linux 2.6.23.8 (the last kernel I was
> using)
>
> The necessary modules load, but:
>
> it87: Found IT8718F chip at 0x290, revision 2
> it87: in3 is VCC (+5V)
> it87 it87.656: Failed to request region 0x290-0x297
> it87: probe of it87.656 failed with error -16
>
> Coretemp still works.
>
> It appears it has something to do with the ioport range being
> reserved for some reason:
>
> system 00:01: ioport range 0x290-0x29f has been reserved
>
> At least I don't see that happening on previous kernels.
>
> In any case, the changes to it87.c itself don't appear to have caused
> this. (CC'd hwmon maintainer anyways, my apologies if that was
> inappropriate)
>
> dmesg:
> http://www.mikeserv.com/temp/dmesg-2.6.24-rc4.txt
>
> config:
> http://www.mikeserv.com/temp/config-2.6.24-rc4.txt

Thanks for your report.

Please also provide:
- dmesg from 2.6.23.8
- The output of "cat /proc/ioports" for both kernels

> Thanks for any help or suggestions,
>
> Mike Houston

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2007-12-09 02:22:45

by Mike Houston

[permalink] [raw]
Subject: Re: 2.6.24-rc4 hwmon it87 probe fails

On Sun, 9 Dec 2007 01:05:54 +0100
Adrian Bunk <[email protected]> wrote:

> On Tue, Dec 04, 2007 at 09:51:54PM -0500, Mike Houston wrote:
> > I finally got around to testing Linux 2.6.24 (2.6.24-rc4) and
> > found that the it87 driver fails to probe and consequently, my
> > sensors no longer work. This was fine with Linux 2.6.23.8 (the
> > last kernel I was using)
> >
> > The necessary modules load, but:
> >
> > it87: Found IT8718F chip at 0x290, revision 2
> > it87: in3 is VCC (+5V)
> > it87 it87.656: Failed to request region 0x290-0x297
> > it87: probe of it87.656 failed with error -16
> >
> > Coretemp still works.
> >
> > It appears it has something to do with the ioport range being
> > reserved for some reason:
> >
> > system 00:01: ioport range 0x290-0x29f has been reserved

>
> Thanks for your report.
>
> Please also provide:
> - dmesg from 2.6.23.8
> - The output of "cat /proc/ioports" for both kernels

Thanks Adrian, here is the information you have requested, for
both kernels (I have 2.6.23.9 now though where it87 still works)

Linux 2.6.23.9:
http://www.mikeserv.com/temp/proc_ioports-2.6.23.9.txt
http://www.mikeserv.com/temp/dmesg-2.6.23.9.txt
http://www.mikeserv.com/temp/config-2.6.23.9.txt

Linux 2.6.24-rc4:
http://www.mikeserv.com/temp/proc_ioports-2.6.24-rc4.txt
http://www.mikeserv.com/temp/dmesg-2.6.24-rc4.txt
http://www.mikeserv.com/temp/config-2.6.24-rc4.txt

Mike Houston

2007-12-09 09:50:50

by Jean Delvare

[permalink] [raw]
Subject: Re: [lm-sensors] 2.6.24-rc4 hwmon it87 probe fails

Hi Mike,

On Sat, 8 Dec 2007 21:22:34 -0500, Mike Houston wrote:
> On Sun, 9 Dec 2007 01:05:54 +0100
> Adrian Bunk <[email protected]> wrote:
>
> > On Tue, Dec 04, 2007 at 09:51:54PM -0500, Mike Houston wrote:
> > > I finally got around to testing Linux 2.6.24 (2.6.24-rc4) and
> > > found that the it87 driver fails to probe and consequently, my
> > > sensors no longer work. This was fine with Linux 2.6.23.8 (the
> > > last kernel I was using)
> > >
> > > The necessary modules load, but:
> > >
> > > it87: Found IT8718F chip at 0x290, revision 2
> > > it87: in3 is VCC (+5V)
> > > it87 it87.656: Failed to request region 0x290-0x297
> > > it87: probe of it87.656 failed with error -16
> > >
> > > Coretemp still works.
> > >
> > > It appears it has something to do with the ioport range being
> > > reserved for some reason:
> > >
> > > system 00:01: ioport range 0x290-0x29f has been reserved
>
> >
> > Thanks for your report.
> >
> > Please also provide:
> > - dmesg from 2.6.23.8
> > - The output of "cat /proc/ioports" for both kernels
>
> Thanks Adrian, here is the information you have requested, for
> both kernels (I have 2.6.23.9 now though where it87 still works)
>
> Linux 2.6.23.9:
> http://www.mikeserv.com/temp/proc_ioports-2.6.23.9.txt
> http://www.mikeserv.com/temp/dmesg-2.6.23.9.txt
> http://www.mikeserv.com/temp/config-2.6.23.9.txt
>
> Linux 2.6.24-rc4:
> http://www.mikeserv.com/temp/proc_ioports-2.6.24-rc4.txt
> http://www.mikeserv.com/temp/dmesg-2.6.24-rc4.txt

This one shows:

system 00:01: ioport range 0x290-0x29f has been reserved
(...)
system 00:01: ioport range 0x290-0x294 has been reserved

This is clearly not correct as both areas overlap. The second
reservation is responsible for the it87 breakage, because it conflicts
with what the it87 driver later attempts to request (0x290-0x297). The
first is wrong as well (the IT87xxF environment controller I/O area is
8 port wide, not 16) but shouldn't be a problem in practice.

These port reservations weren't happening in 2.6.23.9 according to your
dmesg output for that kernel. I don't know what changed in this area
since 2.6.23.9, maybe Bjorn or Adam (Cc'd) can tell.

Either way, the overlapping areas smell like a BIOS bug, meaning that
you should look for an updated BIOS for your system first.

> http://www.mikeserv.com/temp/config-2.6.24-rc4.txt

--
Jean Delvare

2007-12-09 19:40:20

by Mike Houston

[permalink] [raw]
Subject: Re: [lm-sensors] 2.6.24-rc4 hwmon it87 probe fails

On Sun, 9 Dec 2007 10:50:28 +0100
Jean Delvare <[email protected]> wrote:

> This one shows:
>
> system 00:01: ioport range 0x290-0x29f has been reserved
> (...)
> system 00:01: ioport range 0x290-0x294 has been reserved
>
> This is clearly not correct as both areas overlap. The second
> reservation is responsible for the it87 breakage, because it
> conflicts with what the it87 driver later attempts to request
> (0x290-0x297). The first is wrong as well (the IT87xxF environment
> controller I/O area is 8 port wide, not 16) but shouldn't be a
> problem in practice.
>
> These port reservations weren't happening in 2.6.23.9 according to
> your dmesg output for that kernel. I don't know what changed in
> this area since 2.6.23.9, maybe Bjorn or Adam (Cc'd) can tell.
>
> Either way, the overlapping areas smell like a BIOS bug, meaning
> that you should look for an updated BIOS for your system first.
>
> > http://www.mikeserv.com/temp/config-2.6.24-rc4.txt

Thanks for the suggestion, Jean. I flashed my bios to the latest
(F12) for my Gigabyte GA-965P-DS3 (rev. 3.3) motherboard

http://www.gigabyte.com.tw/Products/Motherboard/Products_Overview.aspx?ProductID=2456

Unfortunately, there has been no change to the situation. The same
ioport ranges are being reserved when booting with 2.6.24-rc4 and
it87 does not work. No change to the situation in 2.6.23.9 either, the
io conflict is not occuring and it87 still works there.

Mike Houston