android_kernel_motorola_sm6225/drivers/acpi/acpica
Rafael J. Wysocki 9630bdd9b1 ACPI: Use GPE reference counting to support shared GPEs
ACPI GPEs may map to multiple devices.  The current GPE interface
only provides a mechanism for enabling and disabling GPEs, making
it difficult to change the state of GPEs at runtime without extensive
cooperation between devices.

Add an API to allow devices to indicate whether or not they want
their device's GPE to be enabled for both runtime and wakeup events.

Remove the old GPE type handling entirely, which gets rid of various
quirks, like the implicit disabling with GPE type setting. This
requires a small amount of rework in order to ensure that non-wake
GPEs are enabled by default to preserve existing behaviour.

Based on patches from Matthew Garrett <mjg@redhat.com>.

Signed-off-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-02-22 16:20:45 -08:00
..
accommon.h ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
acconfig.h ACPICA: avoid "Info: mapping multiple BARs. Your kernel is fine." 2009-11-05 17:01:58 -05:00
acdebug.h ACPICA: Remove duplicate prototypes from header 2009-08-27 10:17:14 -04:00
acdispat.h ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
acevents.h ACPI: Use GPE reference counting to support shared GPEs 2010-02-22 16:20:45 -08:00
acglobal.h ACPICA: Add support for module-level executable AML code 2009-08-28 19:40:39 -04:00
achware.h ACPICA: Add 64-bit support to acpi_read and acpi_write 2009-08-27 10:17:14 -04:00
acinterp.h ACPICA: Major update for acpi_get_object_info external interface 2009-08-27 10:17:15 -04:00
aclocal.h ACPI: Use GPE reference counting to support shared GPEs 2010-02-22 16:20:45 -08:00
acmacros.h ACPICA: Reduce severity of predefined repair messages, Warning to Info 2009-11-24 21:27:57 -05:00
acnamesp.h ACPICA: Predefined name repair: automatically remove null package elements 2009-12-15 17:29:37 -05:00
acobject.h ACPICA: Module-level code: enable _REG execution in same scope 2009-12-15 17:29:37 -05:00
acopcode.h ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
acparser.h ACPICA: Add support for module-level executable AML code 2009-08-28 19:40:39 -04:00
acpredef.h ACPICA: Silence the warning about _BIF returning the buffer 2009-11-24 21:34:35 -05:00
acresrc.h ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
acstruct.h ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
actables.h ACPICA: Fix AcpiWalkNamespace race condition with table unload 2009-03-27 12:11:02 -04:00
acutils.h ACPICA: New internal utility function to create Integer objects 2009-11-24 21:31:10 -05:00
amlcode.h ACPICA: ACPI 4.0: iASL/Disassembler - IPMI keyword support. 2009-08-27 10:17:17 -04:00
amlresrc.h ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
dsfield.c ACPICA: Add support for module-level executable AML code 2009-08-28 19:40:39 -04:00
dsinit.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
dsmethod.c ACPICA: Module-level code: enable _REG execution in same scope 2009-12-15 17:29:37 -05:00
dsmthdat.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
dsobject.c ACPICA: Change package length error message to an info message 2009-11-24 21:27:59 -05:00
dsopcode.c Revert "ACPICA: Remove obsolete acpi_os_validate_address interface" 2009-07-27 18:42:38 -04:00
dsutils.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
dswexec.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
dswload.c ACPICA: Fix mutex errors when running _REG methods 2009-12-15 17:29:36 -05:00
dswscope.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
dswstate.c ACPICA: Fix miscellaneous warnings under gcc 4+ 2009-05-27 00:30:49 -04:00
evevent.c ACPICA: Add manifest constants for bit register values 2009-03-27 12:11:01 -04:00
evgpe.c ACPI: Use GPE reference counting to support shared GPEs 2010-02-22 16:20:45 -08:00
evgpeblk.c ACPI: Use GPE reference counting to support shared GPEs 2010-02-22 16:20:45 -08:00
evmisc.c ACPICA: Formatting update - no functional changes 2009-03-27 12:11:02 -04:00
evregion.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
evrgnini.c ACPICA: Module-level code: enable _REG execution in same scope 2009-12-15 17:29:37 -05:00
evsci.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
evxface.c ACPI: Use GPE reference counting to support shared GPEs 2010-02-22 16:20:45 -08:00
evxfevnt.c ACPI: Use GPE reference counting to support shared GPEs 2010-02-22 16:20:45 -08:00
evxfregn.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
exconfig.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
exconvrt.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
excreate.c ACPICA: New: AcpiInstallMethod - install a single control method 2009-05-27 00:35:51 -04:00
exdump.c ACPICA: Fix several pointer casts to avoid possible compile warnings 2009-08-27 10:17:13 -04:00
exfield.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
exfldio.c ACPICA: ACPI 4.0: Interpreter support for IPMI. 2009-08-27 10:17:18 -04:00
exmisc.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exmutex.c ACPICA: Move check for valid Thread ID structure 2009-12-15 17:29:37 -05:00
exnames.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
exoparg1.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
exoparg2.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exoparg3.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exoparg6.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
exprep.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exregion.c ACPICA: avoid "Info: mapping multiple BARs. Your kernel is fine." 2009-11-05 17:01:58 -05:00
exresnte.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exresolv.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exresop.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exstore.c ACPICA: Fix DebugObject output for DdbHandle objects 2009-05-27 00:32:24 -04:00
exstoren.c ACPICA: Remove ACPI_GET_OBJECT_TYPE macro 2009-03-26 16:38:27 -04:00
exstorob.c ACPICA: Windows compatibility fix: same buffer/string store 2009-08-28 15:17:07 -04:00
exsystem.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
exutils.c ACPICA: Major update for acpi_get_object_info external interface 2009-08-27 10:17:15 -04:00
hwacpi.c ACPICA: New: I/O port protection 2009-03-27 12:11:03 -04:00
hwgpe.c ACPICA: Add 64-bit support to acpi_read and acpi_write 2009-08-27 10:17:14 -04:00
hwregs.c ACPICA: Add 64-bit support to acpi_read and acpi_write 2009-08-27 10:17:14 -04:00
hwsleep.c x86, intel_txt: clean up the impact on generic code, unbreak non-x86 2009-09-01 18:25:07 -07:00
hwtimer.c ACPICA: Add 64-bit support to acpi_read and acpi_write 2009-08-27 10:17:14 -04:00
hwvalid.c Revert "ACPICA: delete check for AML access to port 0x81-83" 2009-04-24 00:32:52 -04:00
hwxface.c ACPICA: acpi_reset: Bypass port validation mechanism 2009-08-28 19:40:39 -04:00
Makefile ACPICA: Add repair for predefined methods that must return sorted lists 2009-11-24 21:31:10 -05:00
nsaccess.c ACPICA: Module-level code: enable _REG execution in same scope 2009-12-15 17:29:37 -05:00
nsalloc.c ACPICA: Fix several acpi_attach_data problems 2009-08-27 10:17:19 -04:00
nsdump.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
nsdumpdv.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
nseval.c ACPICA: Module-level code: enable _REG execution in same scope 2009-12-15 17:29:37 -05:00
nsinit.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
nsload.c ACPICA: Fix several acpi_attach_data problems 2009-08-27 10:17:19 -04:00
nsnames.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
nsobject.c ACPICA: New: AcpiInstallMethod - install a single control method 2009-05-27 00:35:51 -04:00
nsparse.c ACPICA: Formatting update - no functional changes 2009-03-27 12:11:02 -04:00
nspredef.c ACPICA: Predefined name repair: automatically remove null package elements 2009-12-15 17:29:37 -05:00
nsrepair.c ACPICA: Update function headers and comments, no functional change 2009-12-15 17:29:36 -05:00
nsrepair2.c ACPICA: Predefined name repair: automatically remove null package elements 2009-12-15 17:29:37 -05:00
nssearch.c ACPICA: Miscellaneous lint changes 2009-05-27 00:30:49 -04:00
nsutils.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
nswalk.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
nsxfeval.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
nsxfname.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
nsxfobj.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
psargs.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
psloop.c ACPICA: Add additional module-level code support 2009-11-24 21:31:11 -05:00
psopcode.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
psparse.c ACPICA: Deploy new create integer interface where appropriate 2009-11-24 21:31:11 -05:00
psscope.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
pstree.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
psutils.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
pswalk.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
psxface.c ACPICA: Module-level code: enable _REG execution in same scope 2009-12-15 17:29:37 -05:00
rsaddr.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rscalc.c ACPICA: Additional validation of _PRT packages (resource mgr) 2009-05-27 00:35:50 -04:00
rscreate.c ACPI: Revert conflicting workaround for BIOS w/ mangled PRT entries 2009-04-11 00:57:21 -04:00
rsdump.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsinfo.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsio.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsirq.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rslist.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsmemory.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsmisc.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsutils.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
rsxface.c ACPICA: Update internal namespace node/handle interfaces 2009-12-15 17:29:35 -05:00
tbfadt.c x86: Trivial whitespace cleanups 2009-09-20 20:18:57 +02:00
tbfind.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
tbinstal.c ACPICA: Miscellaneous lint changes 2009-05-27 00:30:49 -04:00
tbutils.c ACPICA: Dump table header - suppress output of non-printable characters 2009-08-27 10:17:19 -04:00
tbxface.c Merge branch 'linus' into release 2009-04-05 02:14:15 -04:00
tbxfroot.c ACPICA: Formatting update - no functional changes 2009-03-26 16:38:29 -04:00
utalloc.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
utcopy.c ACPICA: Update function headers, no functional change 2009-12-15 17:29:35 -05:00
utdebug.c ACPICA: Fix possible warnings for ACPI_THREAD_ID on 64-bit build 2009-05-27 00:30:48 -04:00
utdelete.c ACPICA: fix leak of acpi_os_validate_address 2009-08-27 13:10:35 -04:00
uteval.c ACPICA: Update _OSI with new Windows OS strings 2009-09-08 22:28:34 -04:00
utglobal.c ACPICA: Add support for module-level executable AML code 2009-08-28 19:40:39 -04:00
utids.c ACPICA: Major update for acpi_get_object_info external interface 2009-08-27 10:17:15 -04:00
utinit.c ACPICA: Fix fault if acpi_terminate is called twice 2009-08-28 19:40:38 -04:00
utlock.c ACPICA: Fix AcpiWalkNamespace race condition with table unload 2009-03-27 12:11:02 -04:00
utmath.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
utmisc.c ACPICA: Reduce severity of predefined repair messages, Warning to Info 2009-11-24 21:27:57 -05:00
utmutex.c ACPICA: Fix possible warnings for ACPI_THREAD_ID on 64-bit build 2009-05-27 00:30:48 -04:00
utobject.c ACPICA: New internal utility function to create Integer objects 2009-11-24 21:31:10 -05:00
utresrc.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
utstate.c ACPICA: hide private headers 2009-01-09 03:31:01 -05:00
utxface.c ACPICA: Add support for module-level executable AML code 2009-08-28 19:40:39 -04:00