Messages in this thread | | | Date | Sat, 3 Mar 2007 08:47:21 -0700 | From | "David Hubbard" <> | Subject | Re: [lm-sensors] Could the k8temp driver be interfering with ACPI? |
| |
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 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |