[lm-sensors] Could the k8temp driver be interfering with ACPI?

David Hubbard david.c.hubbard at gmail.com
Sat Mar 3 16:47:21 CET 2007


Hi Jean,

> Is there anything preventing us from doing such a walk and pre-allocate
> all the I/O ranges? I am not familiar with the ACPI code at all, would
> you possibly propose a patch doing that?

Here's a random idea -- what do you think of it?

ACPI already allocates some I/O ranges, which was a surprise to me:

> My machine looks like this:
>
> 1000-107f : 0000:00:1f.0
>  1000-1003 : ACPI PM1a_EVT_BLK
>  1004-1005 : ACPI PM1a_CNT_BLK
>  1008-100b : ACPI PM_TMR
>  1010-1015 : ACPI CPU throttle
>  1020-1020 : ACPI PM2_CNT_BLK
>  1028-102b : ACPI GPE0_BLK
>  102c-102f : ACPI GPE1_BLK

For I/O and memory that ACPI accesses and has not reserved, the AML
interpreter could allocate at run-time.

I'm not sure how to implement exactly. For example, it would be bad to
have a /proc/ioports that had a lot of single ports allocated, for
example:
1000-107f : 0000:00:1f.0
 1000-1000 : ACPI PM1a_EVT_BLK
 1001-1001 : ACPI PM1a_EVT_BLK
 1002-1002 : ACPI PM1a_EVT_BLK
 1003-1003 : ACPI PM1a_EVT_BLK

Thus the AML interpreter would need to have some reasonable
intelligence when allocating regions. Conflict resolution would also
be more difficult, e.g. if a hwmon driver was loaded first and then
acpi as a module, ACPI could not allocate the region. Maybe run-time
allocating won't work.

And then, how would ACPI release a region after it has used it? The
easiest method would be to never release anything used even once.

Thoughts?

David




More information about the lm-sensors mailing list