[GIT] ACPI patches for 2.6.39

From: Len Brown
Date: Wed Mar 23 2011 - 23:07:14 EST


Hi Linus,

please pull from:

git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git release

This will update the files shown below.

I confess that I merged w/ your latest tree yesterday --
I had a dependency on a previous patch in the merge window.
So I stole your fun of resolving an adjacent hunk-delete conflict:-)

No headlines in this batch, mostly incremental improvements
to existing capabilities.

thanks!

Len Brown
Intel Open Source Technology Center

ps. individual patches are available on linux-acpi@xxxxxxxxxxxxxxx

Documentation/acpi/apei/output_format.txt | 25 +
Documentation/feature-removal-schedule.txt | 8 -
arch/ia64/include/asm/acpi.h | 6 +-
arch/ia64/kernel/acpi.c | 23 +-
arch/x86/include/asm/acpi.h | 5 +-
arch/x86/kernel/acpi/sleep.c | 12 +-
arch/x86/kernel/acpi/sleep.h | 2 +
arch/x86/kernel/cpu/mcheck/mce-apei.c | 42 +-
drivers/acpi/acpi_pad.c | 13 +-
drivers/acpi/acpica/Makefile | 4 +-
drivers/acpi/acpica/acdispat.h | 38 +-
drivers/acpi/acpica/acglobal.h | 4 +
drivers/acpi/acpica/aclocal.h | 19 -
drivers/acpi/acpica/dsargs.c | 391 +++++++++++++++
drivers/acpi/acpica/dscontrol.c | 410 ++++++++++++++++
drivers/acpi/acpica/dsopcode.c | 725 +---------------------------
drivers/acpi/acpica/dswload.c | 670 +-------------------------
drivers/acpi/acpica/dswload2.c | 720 +++++++++++++++++++++++++++
drivers/acpi/acpica/evgpe.c | 9 +
drivers/acpi/acpica/evregion.c | 2 +
drivers/acpi/acpica/evxfregn.c | 36 ++-
drivers/acpi/acpica/exfldio.c | 4 +-
drivers/acpi/acpica/hwxface.c | 10 +-
drivers/acpi/acpica/tbfadt.c | 5 +-
drivers/acpi/acpica/utdecode.c | 548 +++++++++++++++++++++
drivers/acpi/acpica/utglobal.c | 484 +------------------
drivers/acpi/apei/Kconfig | 7 +
drivers/acpi/apei/cper.c | 18 +-
drivers/acpi/apei/erst-dbg.c | 24 +-
drivers/acpi/apei/erst.c | 235 ++++++++--
drivers/acpi/battery.c | 22 +
drivers/acpi/button.c | 174 +++----
drivers/acpi/ec_sys.c | 4 -
drivers/acpi/internal.h | 3 -
drivers/acpi/nvs.c | 22 +-
drivers/acpi/osl.c | 139 +++---
drivers/acpi/pci_link.c | 30 +-
drivers/acpi/processor_core.c | 17 +-
drivers/acpi/processor_driver.c | 4 +-
drivers/acpi/reboot.c | 14 +-
drivers/acpi/scan.c | 1 -
drivers/acpi/sleep.c | 28 +-
drivers/pci/pci-acpi.c | 16 +-
drivers/pci/pcie/aer/aerdrv.h | 9 +-
drivers/pci/pcie/aer/aerdrv_errprint.c | 182 ++++---
drivers/thermal/thermal_sys.c | 3 +-
include/acpi/acoutput.h | 12 +-
include/acpi/acpi_bus.h | 1 -
include/acpi/acpixf.h | 2 +-
include/acpi/actbl.h | 16 +
include/acpi/actbl2.h | 64 +++-
include/acpi/apei.h | 5 +-
include/linux/acpi_io.h | 3 +-
include/linux/aer.h | 24 +
include/linux/cper.h | 2 +
55 files changed, 2921 insertions(+), 2375 deletions(-)
create mode 100644 drivers/acpi/acpica/dsargs.c
create mode 100644 drivers/acpi/acpica/dscontrol.c
create mode 100644 drivers/acpi/acpica/dswload2.c
create mode 100644 drivers/acpi/acpica/utdecode.c

through these commits:

Bob Moore (10):
ACPICA: Remove use of unreliable FADT revision field
ACPICA: Clarify a couple of error messages
ACPICA: Split large utglobal into utdecode.c.
ACPICA: Fix unresolved name issue for no-debug and no-error-msg cases
ACPICA: Split large dsopcode and dsload.c files.
ACPICA: Add support for FunctionalFixedHW in acpi_ut_get_region_name
ACPICA: Add mechanism to defer _REG methods for some installed handlers
ACPICA: Update version to 20110211.
ACPICA: Header support for SLIC table
ACPICA: Update version to 20110316

Durgadoss R (1):
Thermal_Framework-Fix_crash_during_hwmon_unregister

Huang Ying (3):
ACPI, APEI, Add ERST record ID cache
PCIe, AER, use pre-generated prefix in error information printing
ACPI, APEI, Add PCIe AER error information printing support

Jan Beulich (2):
ACPI: use __init where possible in processor driver
ACPI: use __cpuinit for the acpi_processor_set_pdc() call tree

Kyle McMartin (1):
ACPI battery: fribble sysfs files from a resume notifier

Lin Ming (1):
ACPICA: GPE detect optimization - ignore unused GPE registers

Matthew Garrett (3):
ACPICA: Fix access width for reset vector
ACPI: Bug compatibility for Windows on the ACPI reboot vector
ACPI: Make sure the FADT is at least rev 2 before using the reset register

Naga Chumbalkar (2):
ACPI: make acpi_pad /sys output more readable
ACPI: minor printk format change in acpi_pad

Rafael J. Wysocki (18):
ACPI: Do not export functions that are only used in osl.c
ACPI: Change acpi_ioremap_lock into a mutex
ACPI: Avoid walking the list of memory mappings in osl.c twice in a row
ACPI: Make acpi_os_map_memory() avoid creating unnecessary mappings
ACPI: Do not use krefs under a mutex in osl.c
ACPI: Introduce acpi_os_get_iomem()
ACPI / PM: Use existing ACPI iomaps for NVS save/restore (v2)
ACPI: Remove the wakeup.run_wake_count device field
ACPI / Button: Avoid disabling wakeup unnecessarily on remove
ACPI / PM: Drop acpi_restore_state_mem()
ACPI / PM: acpi_suspend_enter() need not switch interrupts off
ACPI / PM: Modify the "low-level resume finished" message
ACPI / PM: Call acpi_save_state_mem() right before low-level suspend
ACPI / PM: Merge do_suspend_lowlevel() into acpi_save_state_mem()
ACPI / PM: acpi_hibernation_enter() need not switch interrupts off
ACPI: Avoid calling request_irq() many times for the same interrupt
ACPI: Remove the unused EC sysdev class
ACPI: Use syscore_ops instead of sysdev class and sysdev

Zhang Rui (1):
ACPI button: remove unused procfs I/F

with this log:

commit 3d26678e8009b03f27674c2f9e5b236c2f627b14
Merge: 02e2407 c3146df
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:35:02 2011 -0400

Merge branch 'sysdev' into release

commit 02e2407858fd62053bf60349c0e72cd1c7a4a60e
Merge: 96e1c40 6447f55d
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:34:54 2011 -0400

Merge branch 'linus' into release

Conflicts:
arch/x86/kernel/acpi/sleep.c

Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 96e1c408ea8a556c5b51e0e7d56bd2afbfbf5fe9
Merge: f7f28f7 25be582
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:34:18 2011 -0400

Merge branch 'battery-sysfs-notifier' into release

commit f7f28f7e8c42c67c4bce24415c6cd6da222a1798
Merge: 5c129a8 95cf3e1
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:34:15 2011 -0400

Merge branch 'reset' into release

commit 5c129a8600100a5d0f5fdbc1014c5dba1d307bc4
Merge: 797b10a 521cb40
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:33:54 2011 -0400

Merge commit 'v2.6.38' into release

commit 797b10a07069e153d41aedb4ae8e76660279e2ee
Merge: 8a9026d 4fdfbe8
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:33:46 2011 -0400

Merge branch 'bugfix-thermal' into release

commit 8a9026d2e91b2c46744396222b0e878b2622c567
Merge: 3c7ef21 cdf2a4e
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 02:19:58 2011 -0400

Merge branch 'misc' into release

commit cdf2a4eeded69f66ec8c5098c375fe49e0820127
Author: Naga Chumbalkar <nagananda.chumbalkar@xxxxxx>
Date: Wed Feb 2 23:27:04 2011 +0000

ACPI: minor printk format change in acpi_pad

Minor format change.

Signed-off-by: Naga Chumbalkar <nagananda.chumbalkar@xxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 32297abd90a5d181e8e026c8b8e65ef41e9ffc07
Author: Naga Chumbalkar <nagananda.chumbalkar@xxxxxx>
Date: Wed Feb 2 23:26:58 2011 +0000

ACPI: make acpi_pad /sys output more readable

Make /sys output from acpi_pad more readable.

Before the fix:
# cat idlecpus idlepct rrtime
00000000510

After the fix:
# cat idlecpus idlepct rrtime
00000000
5
10

Signed-off-by: Naga Chumbalkar <nagananda.chumbalkar@xxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 3c7ef2138aff285e376aefb74330392442cb2f2d
Merge: 2935b54 d8d75b0
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Wed Mar 23 00:18:32 2011 -0400

Merge branch 'acpica' into release

commit d8d75b0ee6dbd65c8a2189aef50a03667d81c937
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Tue Mar 22 11:27:29 2011 +0800

ACPICA: Update version to 20110316

Version 20110316.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 5cf4d7338ba23aa8d9eeaf313f16bb50494be369
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Fri Mar 18 09:49:41 2011 +0800

ACPICA: Header support for SLIC table

We finally have the definition for this table.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 95cf3e12e7f659e536215b37c67d46f3e2ce95cc
Author: Matthew Garrett <mjg@xxxxxxxxxx>
Date: Fri Mar 11 16:12:20 2011 -0500

ACPI: Make sure the FADT is at least rev 2 before using the reset register

The reset register was only introduced with version 2 of the FADT, so we
should check that the FADT revision before trusting its contents.

Signed-off-by: Matthew Garrett <mjg@xxxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 6734fe57a07b2dd23ef1ef2ac1f790747e53eefc
Author: Matthew Garrett <mjg@xxxxxxxxxx>
Date: Fri Mar 11 16:12:19 2011 -0500

ACPI: Bug compatibility for Windows on the ACPI reboot vector

Windows ignores the bit_offset and bit_width, despite the spec requiring
that they be validated. Drop the checks so that we match this behaviour.
Windows also goes straight for the keyboard controller if the ACPI reboot
fails, so we shouldn't sleep if we're still alive.

Signed-off-by: Matthew Garrett <mjg@xxxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit f17d9cbf20c4734c4199caa6dee87047f2f8278f
Author: Matthew Garrett <mjg@xxxxxxxxxx>
Date: Fri Mar 11 16:12:18 2011 -0500

ACPICA: Fix access width for reset vector

Section 4.7.3.6 of the ACPI specification requires that the register width
of the reset vector be 8 bits. Windows simply hardcodes the access to be
a byte and ignores the width provided in the FADT, so make sure that we
do the same.

Signed-off-by: Matthew Garrett <mjg@xxxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 25be5821521640eb00b7eb219ffe59664510d073
Author: Kyle McMartin <kyle@xxxxxxxxxx>
Date: Tue Mar 22 16:19:50 2011 -0400

ACPI battery: fribble sysfs files from a resume notifier

Commit da8aeb92 re-poked the battery on resume, but Linus reports that
it broke his eee and partially reverted it in b23fffd7. Unfortunately
this also results in my x201s giving crack values until the sysfs files
are poked again. In the revert message, it was suggested that we poke it
from a PM notifier, so let's do that.

With this in place, I haven't noticed the units going nutty on my
gnome-power-manager across a dozen suspends or so...

Signed-off-by: Kyle McMartin <kyle@xxxxxxxxxx>
Acked-by: Rafael J. Wysocki <rjw@xxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 2935b544041bbdc32a6864ba9350a7629c56d722
Merge: 2507624 912b742
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Tue Mar 22 23:20:49 2011 -0400

Merge branch 'button-cleanup' into release

commit 912b7427fc13467bac042cc72f2eccbdbc39d773
Author: Zhang Rui <rui.zhang@xxxxxxxxx>
Date: Wed Mar 23 10:21:40 2011 +0800

ACPI button: remove unused procfs I/F

Remove unused ACPI button procfs interface.
Only /proc/acpi/button/lid/LID/state remains.

Signed-off-by: Zhang Rui <rui.zhang@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 25076246e80c0c48cc4c9115335b83343b9dc727
Merge: 05534c9 c413d76
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Tue Mar 22 01:41:47 2011 -0400

Merge branch 'apei-release' into release

commit c413d7682020a127f54744a1b30f597692aea1fd
Author: Huang Ying <ying.huang@xxxxxxxxx>
Date: Mon Feb 21 13:54:43 2011 +0800

ACPI, APEI, Add PCIe AER error information printing support

The AER error information printing support is implemented in
drivers/pci/pcie/aer/aer_print.c. So some string constants, functions
and macros definitions can be re-used without being exported.

The original PCIe AER error information printing function is not
re-used directly because the overall format is quite different. And
changing the original printing format may make some original users'
scripts broken.

Signed-off-by: Huang Ying <ying.huang@xxxxxxxxx>
CC: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
CC: Zhang Yanmin <yanmin.zhang@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit b64a44146540a4761bb1cf8047fffd9dbf0c3090
Author: Huang Ying <ying.huang@xxxxxxxxx>
Date: Mon Feb 21 13:54:42 2011 +0800

PCIe, AER, use pre-generated prefix in error information printing

When printing PCIe AER error information, each line is prefixed with
PCIe device and driver information. In original implementation, the
prefix is generated when each line is printed. In fact, all lines
share the same prefix. So this patch pre-generated the prefix, and
use that one when each line is printed.

In addition to common prefix can be pre-generated, the trailing white
spaces in string constants and NULLs in char * array constants can be
removed too. These can reduce the object file size further.

The size of object file before and after changing is as follow:

text data bss dec
before: 3038 0 0 3038
after: 2118 0 0 2118

Signed-off-by: Huang Ying <ying.huang@xxxxxxxxx>
CC: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
CC: Zhang Yanmin <yanmin.zhang@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 885b976fada5bc6595a9fd3e67e3cb1a3d11f50b
Author: Huang Ying <ying.huang@xxxxxxxxx>
Date: Mon Feb 21 13:54:41 2011 +0800

ACPI, APEI, Add ERST record ID cache

APEI ERST firmware interface and implementation has no multiple users
in mind. For example, if there is four records in storage with ID: 1,
2, 3 and 4, if two ERST readers enumerate the records via
GET_NEXT_RECORD_ID as follow,

reader 1 reader 2
1
2
3
4
-1
-1

where -1 signals there is no more record ID.

Reader 1 has no chance to check record 2 and 4, while reader 2 has no
chance to check record 1 and 3. And any other GET_NEXT_RECORD_ID will
return -1, that is, other readers will has no chance to check any
record even they are not cleared by anyone.

This makes raw GET_NEXT_RECORD_ID not suitable for used by multiple
users.

To solve the issue, an in-memory ERST record ID cache is designed and
implemented. When enumerating record ID, the ID returned by
GET_NEXT_RECORD_ID is added into cache in addition to be returned to
caller. So other readers can check the cache to get all record ID
available.

Signed-off-by: Huang Ying <ying.huang@xxxxxxxxx>
Reviewed-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit c3146df2b735912eddd1d7c080c9377d5df0ae94
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Sat Mar 12 22:16:51 2011 +0100

ACPI: Use syscore_ops instead of sysdev class and sysdev

ACPI uses a sysdev class and a sysdev for executing
irqrouter_resume() before turning on interrupts on the boot CPU.
However, since irqrouter_resume() ignores its argument, the entire
mechanism may be replaced with a struct syscore_ops object which
is considerably simpler.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 4d3fbff26c8e91474e30e575c2b7476be11afd83
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Thu Mar 10 21:21:23 2011 +0100

ACPI: Remove the unused EC sysdev class

The ACPI EC driver defines a sysdev class, but it doesn't use it, so
it can be removed.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 05534c9ffc9d5d950b14de8ba49a7609dc59b0b8
Merge: dd87cc5 589c7a3
Author: Len Brown <len.brown@xxxxxxxxx>
Date: Fri Mar 18 18:06:08 2011 -0400

Merge branch 'acpica' into release

commit af10f941ab7807d8b0bb3c66e679d8a6bbbe7485
Author: Jan Beulich <JBeulich@xxxxxxxxxx>
Date: Thu Feb 17 16:36:24 2011 +0000

ACPI: use __cpuinit for the acpi_processor_set_pdc() call tree

Once acpi_map_lsapic() in ia64 follows how x86 treats it wrt section
placement, the whole tree from acpi_processor_set_pdc() can become
__cpuinit.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
Acked-by: Tony Luck <tony.luck@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 6430c9c12a7dbb8f60f0d8294b73b3c0bb03f64f
Author: Jan Beulich <JBeulich@xxxxxxxxxx>
Date: Thu Feb 17 16:33:53 2011 +0000

ACPI: use __init where possible in processor driver

Use __init for several functions, remove an unnecessary export and a
stray use of __ref.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 4fdfbe8506fa236f3c4cc915b24e70f84a6f768a
Author: Durgadoss R <durgadoss.r@xxxxxxxxx>
Date: Thu Jan 20 02:40:56 2011 +0530

Thermal_Framework-Fix_crash_during_hwmon_unregister

This patch fixes the following bug:
The thermal framework creates a temp*_crit interface, only when
the get_crit_temp pointer is defined. But during the _unregister_
path, without checking for the function definition, it is trying to
remove the temp*_crit interface.

Signed-off-by: Durgadoss R <durgadoss.r@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 589c7a39ae2f2b74fd13ae344ca1dcca61da6bca
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 16:15:21 2011 +0800

ACPICA: Update version to 20110211.

Version 20110211.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit ef09c4f578147464524041cbe3205bb25f900598
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 16:13:25 2011 +0800

ACPICA: Add mechanism to defer _REG methods for some installed handlers

The memory/io/pci/dataTable regions must always be available. For
any user installed handlers for these spaces, defer execution
of _REG methods until acpi_enable_subsystem. This prevents any
chicken/egg problems and ensures that no methods are executed
until all of these regions are ready and available.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 47863b9cbec29f137b3a7718ec851be879b41137
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 16:11:43 2011 +0800

ACPICA: Add support for FunctionalFixedHW in acpi_ut_get_region_name

Was missing this region type.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 9ad19ac456a5f097f7cbbfef820b95297d6a934f
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 16:09:40 2011 +0800

ACPICA: Split large dsopcode and dsload.c files.

Split dsopcode.c into dsargs.c and dscontrol.c.
Split dsload.c into dsload2.c.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit d59a3c6b35995615fa9e4f21d63fdf21328c5b6b
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 16:02:36 2011 +0800

ACPICA: Fix unresolved name issue for no-debug and no-error-msg cases

The _acpi_module_name was left undefined in these cases, but it
is actually needed as a parameter to some interfaces. Define
_acpi_module_name as a null string in these cases. Acpica BZ 888.

http://www.acpica.org/bugzilla/show_bug.cgi?id=888

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit a257e07527890a7f95982b9c330efd8d2de3707a
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 16:00:21 2011 +0800

ACPICA: Split large utglobal into utdecode.c.

utglobal.c contained a lot of code not related to global variables.
These utility decode functions are moved to utdecode.c

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 1b74dfb2f735454031584dc8162f8f27aa5265bf
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 15:52:56 2011 +0800

ACPICA: Clarify a couple of error messages

Clarify region error messages with ID= prefix for space id.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 64b3db22c04586997ab4be46dd5a5b99f8a2d390
Author: Bob Moore <robert.moore@xxxxxxxxx>
Date: Mon Feb 14 15:50:42 2011 +0800

ACPICA: Remove use of unreliable FADT revision field

The revision number in the FADT has been found to be completely
unreliable and cannot be trusted. Only the table length can be
used to infer the actual version.

Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit 6dfad339645247c9deb553e4d68e21211ddc61bd
Author: Lin Ming <ming.m.lin@xxxxxxxxx>
Date: Mon Feb 14 15:29:34 2011 +0800

ACPICA: GPE detect optimization - ignore unused GPE registers

This optimization will simply ignore GPE registers that contain
no enabled GPEs - there is no need to read the register.
ACPICA bugzilla 884.

http://www.acpica.org/bugzilla/show_bug.cgi?id=884

Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

commit dd87cc53c42f3260b7eb7f60822de0fa9e58af59
Merge: 981858b bb45e39 aad83b1 23fe363
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Thu Feb 24 20:00:44 2011 +0100

Merge branches 'acpi-iomem', 'acpi-pm' and 'acpi-sci' into acpi-next

commit 23fe36306ea489eef7dd88506bdcefdc8da39c91
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:48:16 2011 +0100

ACPI: Avoid calling request_irq() many times for the same interrupt

In principle acpi_os_install_interrupt_handler() may be called
multiple times for different interrupts, either from
acpi_ev_get_gpe_xrupt_block(), or from acpi_ev_install_sci_handler().
However, it always attempts to request the same interrupt,
acpi_gbl_FADT.sci_interrupt and it doesn't check whether or not this
interrupt has already been requested.

Modify this function so that it refuses to request interrupts other
than acpi_gbl_FADT.sci_interrupt and change
acpi_os_remove_interrupt_handler() so that it refuses to free such
interrupts. Use the observation that the only supported ACPI
interrupt must be equal to acpi_gbl_FADT.sci_interrupt and drop an
unnecessary variable acpi_irq_irq.

This change has been tested on Toshiba Portege R500 and HP nx6325
without introducing any visible problems.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit aad83b143008e1d406248803550bfbfc600b6398
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:42:35 2011 +0100

ACPI / PM: acpi_hibernation_enter() need not switch interrupts off

The function acpi_hibernation_enter() is always called with
interrupts off, so it doesn't need to switch them off and on.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit f1a2003e22f6b50ea21f7f4b38b38c5ebc9c8017
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:42:22 2011 +0100

ACPI / PM: Merge do_suspend_lowlevel() into acpi_save_state_mem()

The function do_suspend_lowlevel() is specific to x86 and defined in
assembly code, so it should be called from the x86 low-level suspend
code rather than from acpi_suspend_enter().

Merge do_suspend_lowlevel() into the x86's acpi_save_state_mem() and
change the name of the latter to acpi_suspend_lowlevel(), so that the
function's purpose is better reflected by its name.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 979f11b060c0b35b03b86ae854d6f21a710305d0
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:42:09 2011 +0100

ACPI / PM: Call acpi_save_state_mem() right before low-level suspend

Since acpi_save_state_mem() is only called by acpi_suspend_enter()
if the target sleep state is S3, it's better to call it under the
switch (acpi_state), right before do_suspend_lowlevel().

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 7a63f08b2b904d25e966dd0e15c9af4a13c80b90
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:41:57 2011 +0100

ACPI / PM: Modify the "low-level resume finished" message

Move the low-level resume completion message to the point where
control goes back to acpi_suspend_enter() during resume and change
it so that it's more informative.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 82911fe1988fadfc9c01673202cbc411aa803244
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:41:47 2011 +0100

ACPI / PM: acpi_suspend_enter() need not switch interrupts off

The function acpi_suspend_enter() is always called with interrupts
off, so it doesn't need to switch them off and on.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit c41b93fb8551148a93d3bba870365e8489317f02
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:41:35 2011 +0100

ACPI / PM: Drop acpi_restore_state_mem()

The function acpi_restore_state_mem() has never been and most likely
never will be used, so remove it.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit c19f9a84ec807da57fd75bbd9a3f2b8269611f79
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:41:13 2011 +0100

ACPI / Button: Avoid disabling wakeup unnecessarily on remove

If a button device had already been enabled to wake up the system
from sleep states before the button driver saw it, the driver
shouldn't disable the device's wakeup capability when being detached
from the device.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 5190726765b40774c069e187a958e10ccd970e65
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:40:37 2011 +0100

ACPI: Remove the wakeup.run_wake_count device field

The wakeup.run_wake_count ACPI device field is only used by the PCI
runtime PM code to "protect" devices from being prepared for
generating wakeup signals more than once in a row. However, it
really doesn't provide any protection, because (1) all of the
functions it is supposed to protect use their own reference counters
effectively ensuring that the device will be set up for generating
wakeup signals just once and (2) the PCI runtime PM code uses
wakeup.run_wake_count in a racy way, since nothing prevents
acpi_dev_run_wake() from being called concurrently from two different
threads for the same device.

Remove the wakeup.run_wake_count ACPI device field which is
unnecessary, confusing and used in a wrong way.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit bb45e394e21eb2abc710ad43d98ebac1069bf355
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:38:38 2011 +0100

ACPI / PM: Use existing ACPI iomaps for NVS save/restore (v2)

Modify the NVS save/restore code to use acpi_os_get_iomem() and
acpi_os_unmap_memory() to acquire and release references to ACPI
iomaps, respectively. If there's no ACPI iomap corresponding to the
given NVS page, acpi_os_ioremap() is used to map that page and
iounmap() is used to unmap it during resume. [If the page is not
present in the ACPI iomaps already, it doesn't make sense to add its
mapping to the list of ACPI iomaps, because it's going to be thrown
away during the subsequent resume anyway.]

Testing on my HP nx6325 shows that approx. 90% of the NVS pages
have already been mapped by ACPI before suspend and are present in
the ACPI iomaps, so this change appears to be the right thing to do
in general.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 13606a2de1996f8d83a9ce296f74022bdbadf712
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:38:25 2011 +0100

ACPI: Introduce acpi_os_get_iomem()

Introduce function acpi_os_get_iomem() that may be used by its callers
to get a reference to an ACPI iomap.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit b7c1fadd6c2eead56d0664a3a921980120de0c11
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:38:15 2011 +0100

ACPI: Do not use krefs under a mutex in osl.c

The reference counting of ACPI iomaps is carried out entirely under
acpi_ioremap_lock, so it is sufficient to use simple counters instead
of krefs for this purpose.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 7ffd0443f2502478545e23e194b7eb8e16376072
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:38:05 2011 +0100

ACPI: Make acpi_os_map_memory() avoid creating unnecessary mappings

Modify acpi_os_map_memory() so that it doesn't call acpi_os_ioremap()
unconditionally every time it is executed (except when
acpi_gbl_permanent_mmap is unset), which pretty much defeats the
purpose of maintaining the list of ACPI iomaps in osl.c.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 7fe135dc058faea0ce319a03e3b6f98c5049955c
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:37:53 2011 +0100

ACPI: Avoid walking the list of memory mappings in osl.c twice in a row

Make acpi_os_unmap_generic_address() use acpi_map_lookup() to find
the desired iomap and drop the reference to it directly (and
eventually remove it if necessary) instead of calling
acpi_os_unmap_memory(), which requires us to walk the list of ACPI
iomaps twice in a row (first, to get the virtual address associated
with the iomap and second, to get the iomap itself).

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 7bbb890358b96cb6f77adc6815f2072bdf813d5d
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:37:42 2011 +0100

ACPI: Change acpi_ioremap_lock into a mutex

There's no reason why acpi_ioremap_lock has to be a spinlock,
because all of the functions it is used in may sleep anyway and
there's no reason why it should be locked with interrupts off.
Use a mutex instead (that's going to allow us to put some more
operations under the lock later).

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>

commit 073b4964b3b75fd9e19bf3933b26d9c23591c9db
Author: Rafael J. Wysocki <rjw@xxxxxxx>
Date: Tue Feb 8 23:37:31 2011 +0100

ACPI: Do not export functions that are only used in osl.c

The functions acpi_os_map_generic_address() and
acpi_os_unmap_generic_address() are only used in drivers/acpi/osl.c,
so make them static and remove the extern definitions of them from
include/linux/acpi_io.h.

Signed-off-by: Rafael J. Wysocki <rjw@xxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/