Created attachment 21076 [details] Output from lshal I am using a Foxconn A7GM-S 2, with the newest BIOS: ID 872F1P02, Version 08.00.14 - Cool n' quiet was enabled in the BIOS. CPU Scaling is not available because of a bug in the BIOS. Dmesg says: #### [ 1.501760] powernow-k8: Found 1 AMD Phenom(tm) 8650 Triple-Core Processor processors (3 cpu cores) (version 2.20.00) [ 1.501779] ------------[ cut here ]------------ [ 1.501781] WARNING: at /home/kernel-ppa/mainline/build/arch/x86/kernel/cpu/cpufreq/powernow-k8.c:1257 powernowk8_cpu_init+0x305/0x340() [ 1.501783] Hardware name: A7GM-S 2.0 [ 1.501785] [Firmware Bug]: powernow-k8: Your BIOS does not provide ACPI _PSS objects in a way that Linux understands. Please report this to the Linux ACPI maintainers and complain to your BIOS vendor. [ 1.501825] Modules linked in: [ 1.501828] Pid: 1, comm: swapper Not tainted 2.6.30-020630rc2-generic #020630rc2 [ 1.501830] Call Trace: [ 1.501835] [<c013c546>] warn_slowpath+0x86/0xa0 [ 1.501838] [<c0155600>] ? cleanup_srcu_struct+0x0/0x50 [ 1.501842] [<c0323f42>] ? acpi_ut_release_mutex+0x52/0x58 [ 1.501845] [<c031bbfe>] ? acpi_ns_get_node+0x7a/0x84 [ 1.501847] [<c031bbfe>] ? acpi_ns_get_node+0x7a/0x84 [ 1.501851] [<c02d979e>] ? __bitmap_weight+0x3e/0x90 [ 1.501854] [<c0138090>] ? set_cpus_allowed_ptr+0x90/0x120 [ 1.501856] [<c031beff>] ? acpi_get_handle+0x6c/0x8e [ 1.501859] [<c03291b5>] ? acpi_processor_get_performance_info+0x39/0x8e [ 1.501862] [<c03292aa>] ? acpi_processor_register_performance+0xa0/0xba [ 1.501865] [<c02d979e>] ? __bitmap_weight+0x3e/0x90 [ 1.501868] [<c05106e5>] powernowk8_cpu_init+0x305/0x340 [ 1.501871] [<c041ac6f>] ? lock_policy_rwsem_write+0x2f/0x70 [ 1.501874] [<c041b72c>] cpufreq_add_dev+0x14c/0x560 [ 1.501877] [<c02d6a5d>] ? vsnprintf+0x6d/0x420 [ 1.501880] [<c0122908>] ? default_spin_lock_flags+0x8/0x10 [ 1.501883] [<c051563a>] ? _spin_lock_irqsave+0x2a/0x40 [ 1.501885] [<c013ce6c>] ? release_console_sem+0xac/0xd0 [ 1.501889] [<c035e2e5>] sysdev_driver_register+0x75/0x120 [ 1.501891] [<c0122908>] ? default_spin_lock_flags+0x8/0x10 [ 1.501894] [<c051563a>] ? _spin_lock_irqsave+0x2a/0x40 [ 1.501896] [<c05103e0>] ? powernowk8_cpu_init+0x0/0x340 [ 1.501899] [<c041b036>] cpufreq_register_driver+0x86/0x140 [ 1.501902] [<c05103c7>] powernowk8_init+0x87/0xa0 [ 1.501904] [<c0510340>] ? powernowk8_init+0x0/0xa0 [ 1.501907] [<c010112b>] do_one_initcall+0x2b/0x150 [ 1.501910] [<c020b889>] ? __proc_create+0x79/0xf0 [ 1.501912] [<c020ba04>] ? create_proc_entry+0x54/0xa0 [ 1.501915] [<c0185a1a>] ? register_irq_proc+0xaa/0xd0 [ 1.501919] [<c076138c>] do_initcalls+0x1c/0x30 [ 1.501921] [<c0761a20>] ? kernel_init+0x0/0xa0 [ 1.501924] [<c07613c5>] do_basic_setup+0x25/0x30 [ 1.501926] [<c0761a75>] kernel_init+0x55/0xa0 [ 1.501931] [<c01039c7>] kernel_thread_helper+0x7/0x10 [ 1.501935] ---[ end trace 41d123c72ef9e876 ]--- #### Please let me know if you need any more info. I am running the latest vanilla kernel from: http://kernel.ubuntu.com/~kernel-ppa/mainline/ grisell: ~> uname -a Linux grisell 2.6.30-020630rc2-generic #020630rc2 SMP Wed Apr 15 14:00:27 UTC 2009 i686 GNU/Linux
Created attachment 21077 [details] Full output from dmesg
Hi, Leo We see such issue on many boxes based on AMD platform. This is related with BIOS bug. And it had better be fixed by bios upgrading. As there is no _PSS object, the powerk8 cpufreq driver can't be loaded. Of course the cpu scaling can't work. Thanks.
Hi, Rui How about reject this bug? Thanks.
Hi Yakui Thanks for the quick response. I reported this bug here because it was suggested by the dmesg output: "Please report this to the Linux ACPI maintainers". I think we would all save our time if this message was not output this way. Also, I am using the latest BIOS available, so I am not sure what else can be done. Should I report this to the manufacturer and ask for a fix on their side? Thanks!
re-opened. The bug here is that the powernow-k8 driver is asking users to send-email. This bug is fixed only when that is gone. Leo, if you can attach your acpidump, then we can verify that the ACPI code is correct that the warning in the driver simply needs to be updated.
I already sent a patch to the cpufreq list which is meant for 2.6.30 inclusion. I mixed up WARN_ONCE and thought it's doing what the newly introduce printk_once is doing. Also the message is cleaned up there to: +static const char ACPI_PSS_BIOS_BUG_MSG[] = + KERN_ERR FW_BUG PFX "No compatible ACPI _PSS objects found.\n" + KERN_ERR FW_BUG PFX "Try again with latest BIOS.\n"; This is: [PATCH 4/5] CPUFREQ: powernow-k8 cleanup msg if BIOS does not export ACPI _PSS of the patch series with subject: Several ondemand and powernow-k8 cleanups and bugfixes for 2.6.30
Created attachment 21109 [details] Output from acpidump Output from acpidump. I ran it as "sudo acpidump -o acpidump.txt". I got the warning: "Wrong checksum for OEMB!"
For the record (mostly for people suffering the same problem). I did contact Foxconn through their online support form this Wednesday, I explained the problem carefully, I offered help, and I got NO response whatsoever in three days.
I have attached the ACPIDUMP output from my M4A78T-E (bios 1001) for Len.
Created attachment 21151 [details] acpidump of an ASUS M4A78T-E bios 1001
I have upgraded the BIOS to 1201 and enable APCI 2.0 in the BIOS and the _PSS problem seems to be fixed. powernow-k8: Found 1 AMD Phenom(tm) II X4 810 Processor processors (4 cpu cores) (version 2.20.00) powernow-k8: 0 : pstate 0 (2600 MHz) powernow-k8: 1 : pstate 1 (1900 MHz) powernow-k8: 2 : pstate 2 (1400 MHz) powernow-k8: 3 : pstate 3 (800 MHz) Attached is also the latest ACPI dump. Cheers Ross
Created attachment 21182 [details] acpidump of an ASUS M4A78T-E bios 1201 (with ACPI 2.0 set) acpidump of an ASUS M4A78T-E bios 1201 (with ACPI 2.0 set)
hi, leo, can you upgrade your BIOS and see if the problem still exists?
Hi Rui, I have the latest BIOS for my motherboard: 872F1P02. I just checked in the bios upgrade site @ foxconn and they still have that version as the most recent: Version: 872F1P02 Size: 768KB Date: 12/24/2008 As I said above, I tried to contact the foxconn engineers and I got no response whatsoever! Thanks! Leo
Leo and Ross, please attach the dmidecode output of your laptop.
Created attachment 21221 [details] dmidecode output Hi Rui. This is really a desktop, not a laptop. I just attached the output of dmidecode. Thanks!
then I am not surprised that CPU p-state control is not supported on this platform. I agree with len's comments in #5. re-assign to thomas. Thomas, please close this bug when your patch is upstream.
Created attachment 21223 [details] dmidecode of ASUS M4A78T-E BIOS 1201
well, these are really two different problems. let's focus on the incorrect warning message in this bug, i.e. "[Firmware Bug]: powernow-k8: Your BIOS does not provide ACPI _PSS objects in a way that Linux understands. Please report this to the Linux ACPI maintainers and complain to your BIOS vendor."
Sure. The warning is misleading and needs to be fixed. However, I don't see why a desktop should not use CPU scaling. Actually, it should: http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_9485_9487%5E10272,00.html What's the point of having a quad-core running at 3Ghz while the computer is idle? Of course, if this a BIOS bug it needs to be fixed by the BIOS provider, not by the Linux kernel. Thanks!
Patch reposted, I can't do more.
thanks, Thomas, can you give an url of the patch please? I can't find the place where to get the archives of cpufreq mail list. anyway, re-assign this to cpufreq category.
Update: the Foxconn folks DID respond to my inquiry the next day, but the answer did not come through in my email. I'll work with them and try to find a resolution. Is there a good URL I can point them to in regards to what is the standard for ACPI objects such as _PSS ? Thanks! Leo
Also: if such a source of info exists, it should be output in the kernel error, so that users can report something more useful to their motherboard vendors (as opposed to just "complain" :-) )
The same error message appears when using a Gigabyte GA-MA790XT-UD4P (revision 1.0) motherboard with bios version F4G.
I see this problem on all 6 AMD systems I work with. CPU frequency scaling does not work on any of these systems under Linux. The problem is quite pervasive and does not seem to effect Windows. These systems all use different Chipsets, motherboard vendors and AMD cpu variants. The common factor seems to be AMD CPUs and recent Linux kernels. I've filed some details on a recently released IBM thinkpad here: https://bugs.launchpad.net/linux/+bug/364156
If you have a system working under Windows, you need to dump the ACPI _PSS objects and post them here. Then we can try to find out why Linux is not interpreting them as valid objects and hopefully get the issue resolved.
It's great that kernel bugzilla is back. can you please verify if the problem still exists in the latest upstream kernel?
bug closed as there is no response from the bug reporter.