Bug 13146 (A7GM-S_2.0_ACPI_PSS) - Foxconn A7GM-S 2.0: BIOS does not provide ACPI _PSS objects in a way that Linux understands
Summary: Foxconn A7GM-S 2.0: BIOS does not provide ACPI _PSS objects in a way that Lin...
Status: CLOSED INSUFFICIENT_DATA
Alias: A7GM-S_2.0_ACPI_PSS
Product: Power Management
Classification: Unclassified
Component: cpufreq (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Mark Langsdorf
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-04-22 02:50 UTC by Leo Milano
Modified: 2012-05-24 07:17 UTC (History)
7 users (show)

See Also:
Kernel Version: 2.6.30-rc2
Subsystem:
Regression: No
Bisected commit-id:


Attachments
Output from lshal (129.31 KB, text/plain)
2009-04-22 02:50 UTC, Leo Milano
Details
Full output from dmesg (50.37 KB, text/plain)
2009-04-22 02:52 UTC, Leo Milano
Details
Output from acpidump (106.41 KB, text/plain)
2009-04-25 04:05 UTC, Leo Milano
Details
acpidump of an ASUS M4A78T-E bios 1001 (255.87 KB, text/plain)
2009-04-28 09:14 UTC, Ross Alexander
Details
acpidump of an ASUS M4A78T-E bios 1201 (with ACPI 2.0 set) (276.92 KB, text/plain)
2009-05-01 14:26 UTC, Ross Alexander
Details
dmidecode output (18.59 KB, text/plain)
2009-05-05 00:50 UTC, Leo Milano
Details
dmidecode of ASUS M4A78T-E BIOS 1201 (19.02 KB, text/plain)
2009-05-05 06:22 UTC, Ross Alexander
Details

Description Leo Milano 2009-04-22 02:50:55 UTC
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
Comment 1 Leo Milano 2009-04-22 02:52:11 UTC
Created attachment 21077 [details]
Full output from dmesg
Comment 2 ykzhao 2009-04-22 03:01:48 UTC
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.
Comment 3 ykzhao 2009-04-22 03:02:14 UTC
Hi, Rui
    How about reject this bug?
    Thanks.
Comment 4 Leo Milano 2009-04-22 03:23:18 UTC
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!
Comment 5 Len Brown 2009-04-24 03:34:05 UTC
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.
Comment 6 Thomas Renninger 2009-04-24 08:45:32 UTC
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
Comment 7 Leo Milano 2009-04-25 04:05:42 UTC
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!"
Comment 8 Leo Milano 2009-04-25 04:10:34 UTC
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.
Comment 9 Ross Alexander 2009-04-28 09:13:32 UTC
I have attached the ACPIDUMP output from my M4A78T-E (bios 1001) for Len.
Comment 10 Ross Alexander 2009-04-28 09:14:36 UTC
Created attachment 21151 [details]
acpidump of an ASUS M4A78T-E bios 1001
Comment 11 Ross Alexander 2009-05-01 14:20:48 UTC
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
Comment 12 Ross Alexander 2009-05-01 14:26:41 UTC
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)
Comment 13 Zhang Rui 2009-05-04 01:40:32 UTC
hi, leo,
can you upgrade your BIOS and see if the problem still exists?
Comment 14 Leo Milano 2009-05-04 03:07:29 UTC
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
Comment 15 Zhang Rui 2009-05-04 07:06:48 UTC
Leo and Ross, please attach the dmidecode output of your laptop.
Comment 16 Leo Milano 2009-05-05 00:50:29 UTC
Created attachment 21221 [details]
dmidecode output

Hi Rui. This is really a desktop, not a laptop. I just attached the output of dmidecode. Thanks!
Comment 17 Zhang Rui 2009-05-05 01:59:28 UTC
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.
Comment 18 Ross Alexander 2009-05-05 06:22:44 UTC
Created attachment 21223 [details]
dmidecode of ASUS M4A78T-E BIOS 1201
Comment 19 Zhang Rui 2009-05-05 07:01:09 UTC
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."
Comment 20 Leo Milano 2009-05-05 12:23:24 UTC
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!
Comment 21 Thomas Renninger 2009-05-05 14:16:47 UTC
Patch reposted, I can't do more.
Comment 22 Zhang Rui 2009-05-06 01:19:32 UTC
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.
Comment 23 Leo Milano 2009-05-12 15:00:35 UTC
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
Comment 24 Leo Milano 2009-05-12 15:01:58 UTC
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" :-) )
Comment 25 kalmquist4 2009-06-21 00:12:18 UTC
The same error message appears when using a Gigabyte GA-MA790XT-UD4P (revision 1.0) motherboard with bios version F4G.
Comment 26 tpringle 2010-01-30 12:10:25 UTC
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
Comment 27 Mark Langsdorf 2010-02-03 18:57:21 UTC
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.
Comment 28 Zhang Rui 2012-01-18 01:43:22 UTC
It's great that kernel bugzilla is back.

can you please verify if the problem still exists in the latest upstream kernel?
Comment 29 Zhang Rui 2012-05-24 07:17:54 UTC
bug closed as there is no response from the bug reporter.

Note You need to log in before you can comment on or make changes to this bug.