BIOS Fix for Asus M6000N(e) Series Notebooks

  • Author:
    n/a
  • Send To:
    ASUSTeK COMPUTER INC.
  • Sponsored By:
    Linux and FreeBSD users of Asus M6N(e) series notebooks
  • More Info at:
To: ASUSTeK COMPUTER INC.

We, the undersigned, would like to request a fix to the BIOS for the
M6000N(e) series notebooks that makes it currently impossible to read
the battery status under an OS that uses the Intel ACPICA
implementation (Linux, FreeBSD, etc.) without employing one of a couple
different hacks.

The problem lies in the DSDT provided in every BIOS release through
0211A for M6000N and 0206E for the M6000Ne series. The BST0 method
which the OS uses to retrieve the battery status information is missing
a Return statement at the end which makes it invalid by ACPICA
standards, therefore it never gets executed unless the user recompiles
and uses their own version of the DSDT or patches the ACPICA code with
a hack that overlooks this deficiency. Here is the code in question:

Method (BST0, 1, Serialized)
{
If (ACS ())
{
Store (Arg0, Local1)
If (LNot (LLess (Local1, FUCH)))
{
Store (0x00, Local0)
}
Else
{
Store (0x02, Local0)
}
}
Else
{
Store (0x01, Local0)
}
Return Local0 // <-- THIS IS MISSING!!!!
}

I added the missing 'Return Local0' at the end to indicate the problem.
It is really a simple fix for Asus to do and will not adversely affect
the Windows ACPI implementation. However, up to now, Asus has refused
to consider implementing it due to the fact that the Windows ACPI code
does not seem to care about standards and overlooks the missing Return
statement. There are hundreds, if not thousands, of Linux, FreeBSD and
other free OS users of the M6000N(e) series that would love to see
this one simple BIOS fix which is currently preventing them from
getting the most out of their purchase without lengthy kernel or DSDT
recompiles.

These notebooks are sold by many vendors without Windows preinstalled
which makes it a popular choice for those that prefer to run Linux,
FreeBSD or any other free OS. We urge Asus to reconsider its policy
of ignoring its non-Windows user base supplying the BIOS update we
have been requesting for almost a year now.