Peter Stuge wrote:
- I've lost cpu frequency control (no powernow-k8) so now both my
CPUs are running flat out at 3000 MHz. Core temperatures are hovering just below 70C (63C and 67C).
I just had a look at arch/i386/kernel/cpu/cpufreq/powernow-k8.c and it currently depends on ACPI and the BIOS keeping a table of parameters that it needs;
...
Once the table has been initialized in the driver ACPI is not used at all - the real work is done using rdmsr() and wrmsr().
I think it would be easy enough to change the initialization so that ACPI is not required.
And it means the kernel driver has to maintain alll the tables for all CPU revisions and options.
AMD: Are these tables board dependent? Why not put the tables, arranged by cpuid, into the powernow driver and do without ACPI?
I am not AMD, but I guess it is preferred to do the efford once instead of once per OS.
Fixing things that we do wrong in Linux is a bad thing. It will only help us with Linux and lock out all others. Did we do this whole free bios thing to make it easier to lock others out? Ouch.
Another option is of course for someone to create the needed table, store it in the right place and reserve that memory so Linux doesn't use it - but I don't like that solution too much.
Why not?
I sense a large antipathy against ACPI, and I agreed to that before I wrote the initial ACPI implementation in LinuxBIOS.
But now we have a framework since a couple of years and instead of improving that framework we constantly talk ACPI down. It really is a mixture between our device tree and our lbtable. Ok. The standard is broken in many parts, but it does not force people to use those broken parts.
One thing is pretty absolute sure though:
No ACPI -> No Laptops.
Except we have a team on the Linux side fixing things up for us. Like the OLPC did. While that works fine for a philosophic and academic project like the OLPC, it is by no means an option to support a wide range of systems.
Stefan