Ubuntu

Defective AMI BIOS on multiple Foxconn, MSI, and ASUS Intel LGA 775 motherboards breaks ACPI support

Reported by Andrew Farmer on 2008-07-24
30
Affects Status Importance Assigned to Milestone
linux (Fedora)
Fix Released
Unknown
linux (Ubuntu)
High
Unassigned
Nominated for Intrepid by Andrew Farmer
Nominated for Jaunty by jap1968
Hardy
High
Stefan Bader

Bug Description

SRU justification:

Impact: After resuming "the other OS" seems to reset WAK_STS which some boards use as indication whether a machine is rebooting or resuming. So when not clearing that flag the reboot after resume does not work correctly.

Fix: Backport of upstream patch from Matthew Garret which is confirmed to fix the issue in Intrepid.

Testcase: On affected BIOSes suspend and resume, then reboot.

---

Update: Heart Zhang at Foxconn has posted on the forums, with instructions on how to download the test/beta of their repaired BIOS for their G33M and G33M-S boards, and says all affected Foxconn boards will be fixed soon: http://ubuntuforums.org/showthread.php?t=877721

I need to stress that as it is, you will need to be using kernel 2.6.26 to fix some kernel bugs that this BIOS still provokes, but it looks like most of the issues with the BIOS itself are resolved, Foxconn is trying to get it tested and all the loose ends ties up before making a release, so even if you grab this build, you'll want the release one too when it arrives.

Description of problem:

Multiple ACPI problems and warnings on boot, PC may suspend and resume on recent kernels, but on resume sound will not work except with kernel 2.6.26, and in any case, on next reboot the system hangs and requires a hard reset, Thermal Zone and Fan control support also appear to be missing, I had to set the BIOS to take control
of the fans, or else they run at 100% at all times.

The website for the affected Foxconn G33M-S motherboard that I own:

http://www.foxconnchannel.com/product/Motherboards/detail_overview.aspx?ID=en-us0000327

I am using latest BIOS for my Foxconn G33M-S, which seems to allow CPU Frequency scaling to function, earlier BIOS versions don't allow this.

Version-Release number of selected component:

Any Linux kernel.

Running a 2.6.26-git9 kernel from kernel.org appears to fix (some?) of this in that ACPI: Failed
To Attach Device messages are gone and PC suspends, resumes, still but hangs on reboot if suspend has been used that session, still get checksum error relating to tbautils, and still no fan control support.

Running a customized DSDT table meant for Windows Vista or XP, gets the problem down to just crashing on reboot if I've suspended and resumed in that session, AMI BIOS has some weird Linux path and these need to be removed, unknown how they are triggering Linux into accepting this.

Behavior is the same with ACPI 1, 2, or 3 as selected in the BIOS setup program.

How reproducible:

Steps to Reproduce:

1. Install an affected Foxconn, MSI, or ASUS Intel LGA775 motherboard with the defective AMI BIOS.
2. Boot Ubuntu (or any Linux distribution)
3. Try a suspend, resume, playing sounds, reboot.

Actual results:

Depending on your kernel, all kind of things, either the system won't boot at all, resume doesn't work at all, reboot doesn't work after resuming, sound never works after resuming (except in Intrepid development branch or with other 2.6.26 based kernel), and in all cases, ugly kernel error messages in the system log.

Expected results:

Everything works, kernel gives no error messages.

Additional info:

I’ve attached all debugging info requested by DebuggingACPI page.

Foxconn is aware of the situation and has promised a BIOS update expeditiously, status of MSI and ASUS on the issue is unknown.

Changed in linux:
status: Unknown → Confirmed

I'm now trying Ubuntu Intrepid Alpha 2 with kernel 2.6.26-4, will attach relevant data,.

Connor Imes (rocket2dmn) wrote :

Thank you for reporting this bug and any supporting documentation. Since this bug has enough information provided for a developer to begin work, I'm going to mark it as Triaged and let them handle it from here.

Corresponding Ubuntu Forums thread: http://ubuntuforums.org/showthread.php?t=869249 (includes conversation with Foxconn regarding this issue)

Changed in linux:
importance: Undecided → High
status: New → Triaged
Amit Kucheria (amitk) wrote :

As I mentioned on IRC, there is little that Ubuntu can do about this bug besides enabling support for alternative DSDT through initramfs (already enabled in Hardy and will be in next version of Intrepid kernel).

Unfortunately, even if we could come up with fixed DSDTs for the innumerable versions of BIOSes shipped on all the variations of PCs and laptops(practically impossible), it wouldn't be legally possible for a distro to ship them as I understand it.

The way forward for users is:
- Disassemble the DSDT yourself or ask a friendly Linux hacker.
- Help others to fix their DSDTs if you have figured it out
- Upload your fixed DSDTs to http://acpi.sourceforge.net/dsdt/ so that others might benefit from them
- Report bugs in Linux ACPI to the kernel bugzilla so that we can be bug-for-bug compatible with Windows - Sad but true :-/
- Make your HW vendors aware of the problem and _request_ that they fix it.
- Vote with your wallets :)

Apparently Foxconn is working on a patch, nothing like leaning on them to get them from "Go buy Vista" to "We'll have it next week" I guess, it was not really my intention to attack Foxconn publicly, but they were totally blowing me off and I felt something had to be done.

Thank you to the community for helping me show that we buy a lot of hardware too and don't deserve to be treated like this.

description: updated
description: updated
Manca (manca1) wrote :

It's funny thing that the same problem occurs on P5E WS PRO mobo from Asus. I have it, and have similar problems with suspend/hibernate non working.... I debugged DSDT tables, found everything which Ryan showed, and did what he wrote, but still no suspend/hibernate.

What could be the problem? I am hoping to see this fixed in newer kernel releases.

http://forum.msi.com.tw/index.php?topic=118715.msg895494

Same bug apparently occurs on an MSI P965 Platinum.

Your board, and this fellows, also appear to have been made by Foxconn, and also use basically the same Foxconn-customized AMI (American Megatrends) BIOS.

I have started a Defective By Design consumer action list of bad motherboards that display similar problems to this.

http://izanbardprince.wordpress.com/2008/07/27/list-of-confirmed-foxconn-sabotaged-motherboards-that-cannot-run-linux-well/

I will keep it updated based on reader input, so that less users will tend to buy things like this in the future.

Unfortunately, until Foxconn releases their "patch", there isn't a lot I can do, or the kernel guys for that matter, so if you want to leave me feedback on my blog, then please feel free.

Just to go over what Matthew Garrett has stated on his blog, paraphrasing:

"There's no way altering the DSDT fixes any of the errors, especially not the checksum"

It does indeed fix all of that, or at least no errors in my log when I change to _OSI and Store Zero (What Vista and XP get), and remove the _OS reference to "Linux", so I don't know, I'm even more uncomfortable with this, he says this shouldn't happen, but it does.

Changed in linux:
status: Confirmed → In Progress

I have been in touch with Foxconn several times today, this bug also affects:

Asus P5K-E
P5E WS and P5E WS PRO
MSI P965 series

It is the BIOS that is defective, not the chipset.

American Megatrends (AMI) shipped the defective BIOS, if yours is an Award BIOS, this is not an issue.

http://izanbardprince.wordpress.com/2008/07/28/foxconn-says-acpi-issues-are-amis-fault-is-having-them-repair-the-code/

I've been told to expect the Foxconn fix within a matter of days, users of ASUS or MSI motherboards are encoraged to contact them for the fix and reference that Foxconn has confirmed that the AMI BIOS is defective.

Download full text (3.7 KiB)

I can confirm the problem on my P5E WS PRO mobo.

Should I just contact them and tell them it is the AMI problem?

On Tue, Jul 29, 2008 at 8:56 AM, Andrew Farmer <<email address hidden>
> wrote:

> I have been in touch with Foxconn several times today, this bug also
> affects:
>
> Asus P5K-E
> P5E WS and P5E WS PRO
> MSI P965 series
>
> It is the BIOS that is defective, not the chipset.
>
> American Megatrends (AMI) shipped the defective BIOS, if yours is an
> Award BIOS, this is not an issue.
>
> http://izanbardprince.wordpress.com/2008/07/28/foxconn-says-acpi-issues-
> are-amis-fault-is-having-them-repair-the-code/<http://izanbardprince.wordpress.com/2008/07/28/foxconn-says-acpi-issues-are-amis-fault-is-having-them-repair-the-code/>
>
> I've been told to expect the Foxconn fix within a matter of days, users
> of ASUS or MSI motherboards are encoraged to contact them for the fix
> and reference that Foxconn has confirmed that the AMI BIOS is defective.
>
>
> ** Summary changed:
>
> - Bad ACPI support on Foxconn G33M/G33M-S motherboards with AMI BIOS
> + Defective AMI BIOS on multiple Foxconn, MSI, and ASUS motherboards breaks
> ACPI support
>
> ** Summary changed:
>
> - Defective AMI BIOS on multiple Foxconn, MSI, and ASUS motherboards breaks
> ACPI support
> + Defective AMI BIOS on multiple Foxconn, MSI, and ASUS Intel LGA 775
> motherboards breaks ACPI support
>
> --
> Defective AMI BIOS on multiple Foxconn, MSI, and ASUS Intel LGA 775
> motherboards breaks ACPI support
> https://bugs.launchpad.net/bugs/251338
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in "linux" source package in Ubuntu: Triaged
> Status in "linux" source package in Fedora: In Progress
>
> Bug description:
> Description of problem:
>
> Multiple ACPI problems and warnings on boot, PC will suspend and resume,
> but on resume sound will not work,
> and on next reboot, it hangs and requires a hard reset, Thermal Zone and
> Fan
> control support also appear to be missing, I had to set the BIOS to take
> control
> of the fans, or else they run at 100% at all times.
>
> The website for this motherboard:
>
>
> http://www.foxconnchannel.com/product/Motherboards/detail_overview.aspx?ID=en-us0000327
>
> I am using latest BIOS, which seems to allow CPU Frequency scaling to
> function.
>
> Version-Release number of selected component:
>
> Linux ryan-desktop 2.6.24-20-generic #1 SMP Thu Jul 17 15:55:27 UTC 2008
> x86_64 GNU/Linux
>
> Running a 2.6.26-git9 kernel from kernel.org appears to fix (some?) of
> this in that ACPI: Failed
> To Attach Device messages are gone and PC suspends, resumes, but hangs on
> reboot if suspend has been used that session, still get checksum error
> relating to tbautils, and still no fan control support.
>
> Running a customized DSDT table gets the problem down to just crashing on
> reboot if I've suspended and resumed in that session.
>
> Behavior is the same with ACPI 1, 2, or 3.
>
> How reproducible:
>
> Steps to Reproduce:
>
> 1. Install Foxconn G33M or G33M-S motherboard.
> 2. Boot Ubuntu
> 3. Try a suspend, resume, playing sounds, reboot.
>
> Actual results:
>
> Depending on your kernel, e...

Read more...

description: updated

Manca:

I would tell them:

This has been verified by Foxconn and AMI as a defective BIOS.

When an upgrade is available, I would appreciate you please posting it so that your customers can benefit.

(Can you please not quote everything in the bug report? Please try replying on the bug page itself, that looks awful)

Connor Imes (rocket2dmn) wrote :

Sorry for the delay, assigned to ubuntu-kernel-acpi

Changed in linux:
assignee: nobody → ubuntu-kernel-acpi

BIOS fix for Foxconn motherboards very soon, I am beta testing a new BIOS that resolves all the party poopers as long as you're using kernel 2.6.26

MSI and ASUS appear to want to have nothing to do with this, thats my hunch anyway, kindly pester them if you're their customer would be my suggestion, but we all know that would make me a hypocrite. :P

Update: Heart Zhang at Foxconn has posted on the forums, with instructions on how to download the test/beta of their repaired BIOS for their G33M and G33M-S boards, and says all affected Foxconn boards will be fixed soon: http://ubuntuforums.org/showthread.php?t=877721

I need to stress that as it is, you will need to be using kernel 2.6.26 to fix some kernel bugs that this BIOS still provokes, but it looks like most of the issues with the BIOS itself are resolved, Foxconn is trying to get it tested and all the loose ends tied up before making a release, so even if you grab this build, you'll want the release one too when it arrives.

description: updated

I have same issue with Asus P5E-VM HDMI (chipset G35) , I can not reboot after resuming.

dmesg:
[ 0.189351] ACPI Warning (tbutils-0217): Incorrect checksum in table [OEMB] - C9, should be C8 [20080321]

I'm using latest bios version 0506 "AMIBIOS American Megatrends"
I'm using latest kernel 2.6.26.1 and 2.6.26 but I have same error with ubuntu kernel

dsdt.dsl:

If (CondRefOf (_OSI, Local1))
        {
            If (_OSI ("Windows 2000"))
            {
                Store (0x04, OSVR)
            }

            If (_OSI ("Windows 2001"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001 SP1"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001 SP2"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001.1"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2001.1 SP1"))
            {
                Store (Zero, OSVR)
            }

            If (_OSI ("Windows 2006"))
            {
                Store (Zero, OSVR)
            }
        }
        Else
        {
            If (MCTH (_OS, "Microsoft Windows NT"))
            {
                Store (0x04, OSVR)
            }
            Else
            {
                If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
                {
                    Store (0x02, OSVR)
                }

                If (MCTH (_OS, "Linux"))
                {
                    Store (0x03, OSVR)
                }
            }
        }

        Return (OSVR)
    }

Changed in linux:
status: In Progress → Fix Released

I see that Matthew Garrett has released a fix in Fedora Rawhide and sent it upstream.

Since this is a small patch with what looks like a very low risk of regressions, fixing a severe problem......When can it be applied to Ubuntu Hardy and Intrepid Development?

I didn't see Matthew Garrett attach this anywhere, but I snuck over to his blog and swiped it from:

http://www.codon.org.uk/~mjg59/tmp/foxconn.diff

It probably would be easier to patch the kernel since this has grown way past the scope of a few dodgy motherboards.

I'd still say patching the BIOS is preferable if you use a Foxconn G33M or G33M-S.

Anyway, thank you Matthew Garrett, I concur that it would probably be better to use this than expect the vendors to pull their heads out and get some fresh air.

Connor Imes (rocket2dmn) wrote :

Matthew posted the same link on an update thread on the Ubuntu Forums, here is the post for anybody interested:
http://ubuntuforums.org/showpost.php?p=5536245&postcount=46

Using Tim Gardner's 2.6.24-21.39 kernel, the "ACPI: Failed To Attach Device Data" errors, and all of the "Quirk" entries are gone from the kernel log.

Using this kernel + Foxconn's BIOS fix or Matthew Garrett's workaround patch, the only part of this bug that survives seems to be the no sound after resuming from Suspend.

Sound works after resume on Intrepid.

Anyone have any ideas what is wrong here with Hardy?

Landing Matthew Garrett's patch + 2.6.24-21 +a patch for the no sound after resume would fix this bug on Hardy.

Hi Guys,

I'm reassigning this to the ubuntu-kernel-team and will bring to their attention. I'll also approve the Hardy nomination. Intrepid is not yet officially released. I'm guessing the patch will hopefully get in before the Intrepid kernel freeze. Thanks.

Changed in linux:
assignee: ubuntu-kernel-acpi → ubuntu-kernel-team

The Ubuntu Kernel Team is planning to move to the 2.6.27 kernel for the upcoming Intrepid Ibex 8.10 release. As a result, the kernel team would appreciate it if you could please test this newer 2.6.27 Ubuntu kernel. There are one of two ways you should be able to test:

1) If you are comfortable installing packages on your own, the linux-image-2.6.27-* package is currently available for you to install and test.

--or--

2) The upcoming Alpha5 for Intrepid Ibex 8.10 will contain this newer 2.6.27 Ubuntu kernel. Alpha5 is set to be released Thursday Sept 4. Please watch http://www.ubuntu.com/testing for Alpha5 to be announced. You should then be able to test via a LiveCD.

Please let us know immediately if this newer 2.6.27 kernel resolves the bug reported here or if the issue remains. More importantly, please open a new bug report for each new bug/regression introduced by the 2.6.27 kernel and tag the bug report with 'linux-2.6.27'. Also, please specifically note if the issue does or does not appear in the 2.6.26 kernel. Thanks again, we really appreicate your help and feedback.

Under Intrepid fully updated with ubuntu kernel 2.6.27-1-generic, amd64, suspend works now finally :-) but resume does not work.

Ok!!! great work guys! Under intrepid with ubuntu kernel 2.6.27-2-generic suspend and resume works on my system with Asus P5E-VM HDMI. Thanks

Thanks for the update. I'm tentatively marking this "Fix Released" for Intrepid with the 2.6.27 kernel.

Changed in linux:
status: Triaged → Fix Released

Per a decision made by the Ubuntu Kernel Team, bugs will longer be assigned to the ubuntu-kernel-team in Launchpad as part of the bug triage process. The ubuntu-kernel-team is being unassigned from this bug report. Refer to https://wiki.ubuntu.com/KernelTeamBugPolicies for more information. Thanks.

Connor Imes (rocket2dmn) wrote :

Leann, can you tell us if this will be fixed in Hardy? If not, then can we close the task? Thanks in advance!

Changed in linux:
importance: Undecided → High
status: New → Incomplete
Stefan Bader (smb) on 2009-03-02
Changed in linux:
assignee: nobody → stefan-bader-canonical
jap1968 (jap1968) wrote :

Same problem here!

I am migrating my desktop computer from XP to Ubuntu. I have tried 32 and 64 bit versions of 8.04, 8.10, and 9.04 (alfa-4, alfa-5, alfa-6). Right now I am running U9.04 alfa-4 32 bits.

$ cat /proc/version
Linux version 2.6.28-9-generic (buildd@palmer) (gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu2) ) #31-Ubuntu SMP Wed Mar 11 15:43:58 UTC 2009

I have had lots of problems with this computer: PCI cards that cause kernel panic, suspend-resume does not work, fans always at top speed, and usb devices that do not work properly. I have finally fount this thread, and this may be the reason of this nightmare of motherboard.

MoBo: ASUSTeK Computer INC: P5GD1 PRO
BIOS: American Megatrends Inc: 1012.001 (10/13/2005)

Just updated BIOS to latest (non-beta) available, but the problem persists. The latest beta version is from 2006, so they do not provide a BIOS without this problem.

The problem:

$ dmesg | grep 'ACPI Warning'
[ 0.501295] ACPI Warning (tbutils-0217): Incorrect checksum in table [OEMB] - 89, should be 7C [20080926]
[ 1.225647] ACPI Warning (tbutils-0217): Incorrect checksum in table [SSDT] - D7, should be EB [20080926]

Any other Ubuntu user with this motherboard? Is there an easy solution to this?

Stefan Bader (smb) on 2009-03-18
description: updated
Changed in linux:
status: Incomplete → Fix Committed
Launchpad Janitor (janitor) wrote :
Download full text (5.1 KiB)

This bug was fixed in the package linux - 2.6.24-24.53

---------------
linux (2.6.24-24.53) hardy-proposed; urgency=low

  [Stefan Bader]

  * Rebuild of 2.6.24-24.51 with 2.6.24-23.52 security patches applied.

linux (2.6.24-24.51) hardy-proposed; urgency=low

  [Alessio Igor Bogani]

  * rt: Updated PREEMPT_RT support to rt27
    - LP: #324275

  [Steve Beattie]

  * fix apparmor memory leak on deleted file ops
    - LP: #329489

  [Upstream Kernel Changes]

  * KVM: MMU: Add locking around kvm_mmu_slot_remove_write_access()
    - LP: #335097, #333409
  * serial: 8250: fix shared interrupts issues with SMP and RT kernels
    - LP: #280821
  * 8250.c: port.lock is irq-safe
    - LP: #280821
  * ACPI: Clear WAK_STS on resume
    - LP: #251338

linux (2.6.24-24.50) hardy-proposed; urgency=low

  [Alok Kataria]

  * x86: add X86_FEATURE_HYPERVISOR feature bit
    - LP: #319945
  * x86: add a synthetic TSC_RELIABLE feature bit
    - LP: #319945
  * x86: vmware: look for DMI string in the product serial key
    - LP: #319945
  * x86: Hypervisor detection and get tsc_freq from hypervisor
    - LP: #319945
  * x86: Use the synthetic TSC_RELIABLE bit to workaround virtualization
    anomalies.
    - LP: #319945
  * x86: Skip verification by the watchdog for TSC clocksource.
    - LP: #319945
  * x86: Mark TSC synchronized on VMware.
    - LP: #319945

  [Colin Ian King]

  * SAUCE: Bluetooth USB: fix kernel panic during suspend while streaming
    audio to bluetooth headset
    - LP: #331106

  [James Troup]

  * XEN: Enable architecture specific get_unmapped_area_topdown
    - LP: #237724

  [Stefan Bader]

  * Xen: Fix FTBS after Vmware TSC updates.
    - LP: #319945

  [Upstream Kernel Changes]

  * r8169: fix RxMissed register access
    - LP: #324760
  * r8169: Tx performance tweak helper
    - LP: #326891
  * r8169: use pci_find_capability for the PCI-E features
    - LP: #326891
  * r8169: add 8168/8101 registers description
    - LP: #326891
  * r8169: add hw start helpers for the 8168 and the 8101
    - LP: #326891
  * r8169: additional 8101 and 8102 support
    - LP: #326891
  * Fix memory corruption in console selection
    - LP: #329007

linux (2.6.24-23.52) hardy-security; urgency=low

  [Stefan Bader]
  * rt: Fix FTBS caused by shm changes
    - CVE-2009-0859

  [Steve Beattie]

  * fix apparmor memory leak on deleted file ops
    - LP: #329489

  [Upstream Kernel Changes]

  * NFS: Remove the buggy lock-if-signalled case from do_setlk()
    - CVE-2008-4307
  * sctp: Avoid memory overflow while FWD-TSN chunk is received with bad
    stream ID
    - CVE-2009-0065
  * net: 4 bytes kernel memory disclosure in SO_BSDCOMPAT gsopt try #2
    - CVE-2009-0676
  * sparc: Fix mremap address range validation.
    - CVE-2008-6107
  * copy_process: fix CLONE_PARENT && parent_exec_id interaction
    - CVE-2009-0028
  * security: introduce missing kfree
    - CVE-2009-0031
  * eCryptfs: check readlink result was not an error before using it
    - CVE-2009-0269
  * dell_rbu: use scnprintf() instead of less secure sprintf()
    - CVE-2009-0322
  * drivers/net/skfp: if !capable(CAP_NET_ADMIN): inverted logic
    - CVE-2009-0675
  * Ext4: Fix online res...

Read more...

Changed in linux (Ubuntu Hardy):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.