diff options
| author | Len Brown <len.brown@intel.com> | 2010-08-15 00:25:40 -0400 |
|---|---|---|
| committer | Len Brown <len.brown@intel.com> | 2010-08-15 00:25:40 -0400 |
| commit | c172cb73bc79fe69915b1a1a48e374aa4b1f8a59 (patch) | |
| tree | eb3d6415914968441c063f7282e824b14b5a5edb | |
| parent | e8eb6228094bcf0c84d9aa32b6363e78da68e1f5 (diff) | |
| parent | 28f4f8a9def2b1f3a6066bae791c77043ec49524 (diff) | |
Merge branch 'acpica-gpe' into release
54 files changed, 570 insertions, 934 deletions
diff --git a/drivers/acpi/acpica/acevents.h b/drivers/acpi/acpica/acevents.h index c3f43daa8be3..36867cd70eac 100644 --- a/drivers/acpi/acpica/acevents.h +++ b/drivers/acpi/acpica/acevents.h | |||
| @@ -78,7 +78,13 @@ acpi_ev_queue_notify_request(struct acpi_namespace_node *node, | |||
| 78 | u32 acpi_ev_gpe_detect(struct acpi_gpe_xrupt_info *gpe_xrupt_list); | 78 | u32 acpi_ev_gpe_detect(struct acpi_gpe_xrupt_info *gpe_xrupt_list); |
| 79 | 79 | ||
| 80 | acpi_status | 80 | acpi_status |
| 81 | acpi_ev_update_gpe_enable_masks(struct acpi_gpe_event_info *gpe_event_info); | 81 | acpi_ev_update_gpe_enable_mask(struct acpi_gpe_event_info *gpe_event_info); |
| 82 | |||
| 83 | acpi_status acpi_ev_enable_gpe(struct acpi_gpe_event_info *gpe_event_info); | ||
| 84 | |||
| 85 | acpi_status acpi_raw_enable_gpe(struct acpi_gpe_event_info *gpe_event_info); | ||
| 86 | |||
| 87 | acpi_status acpi_raw_disable_gpe(struct acpi_gpe_event_info *gpe_event_info); | ||
| 82 | 88 | ||
| 83 | struct acpi_gpe_event_info *acpi_ev_get_gpe_event_info(acpi_handle gpe_device, | 89 | struct acpi_gpe_event_info *acpi_ev_get_gpe_event_info(acpi_handle gpe_device, |
| 84 | u32 gpe_number); | 90 | u32 gpe_number); |
diff --git a/drivers/acpi/acpica/acglobal.h b/drivers/acpi/acpica/acglobal.h index 92122292ef1f..1d192142c691 100644 --- a/drivers/acpi/acpica/acglobal.h +++ b/drivers/acpi/acpica/acglobal.h | |||
| @@ -100,13 +100,6 @@ u8 ACPI_INIT_GLOBAL(acpi_gbl_all_methods_serialized, FALSE); | |||
| 100 | u8 ACPI_INIT_GLOBAL(acpi_gbl_create_osi_method, TRUE); | 100 | u8 ACPI_INIT_GLOBAL(acpi_gbl_create_osi_method, TRUE); |
| 101 | 101 | ||
| 102 | /* | 102 | /* |
| 103 | * Disable wakeup GPEs during runtime? Default is TRUE because WAKE and | ||
| 104 | * RUNTIME GPEs should never be shared, and WAKE GPEs should typically only | ||
| 105 | * be enabled just before going to sleep. | ||
| 106 | */ | ||
| 107 | u8 ACPI_INIT_GLOBAL(acpi_gbl_leave_wake_gpes_disabled, TRUE); | ||
| 108 | |||
| 109 | /* | ||
| 110 | * Optionally use default values for the ACPI register widths. Set this to | 103 | * Optionally use default values for the ACPI register widths. Set this to |
| 111 | * TRUE to use the defaults, if an FADT contains incorrect widths/lengths. | 104 | * TRUE to use the defaults, if an FADT contains incorrect widths/lengths. |
| 112 | */ | 105 | */ |
diff --git a/drivers/acpi/acpica/achware.h b/drivers/acpi/acpica/achware.h index 32391588e163..120b3af56596 100644 --- a/drivers/acpi/acpica/achware.h +++ b/drivers/acpi/acpica/achware.h | |||
| @@ -90,16 +90,13 @@ acpi_status acpi_hw_write_port(acpi_io_address address, u32 value, u32 width); | |||
| 90 | /* | 90 | /* |
| 91 | * hwgpe - GPE support | 91 | * hwgpe - GPE support |
| 92 | */ | 92 | */ |
| 93 | u32 acpi_hw_gpe_register_bit(struct acpi_gpe_event_info *gpe_event_info, | 93 | u32 acpi_hw_get_gpe_register_bit(struct acpi_gpe_event_info *gpe_event_info, |
| 94 | struct acpi_gpe_register_info *gpe_register_info); | 94 | struct acpi_gpe_register_info *gpe_register_info); |
| 95 | 95 | ||
| 96 | acpi_status | 96 | acpi_status |
| 97 | acpi_hw_low_set_gpe(struct acpi_gpe_event_info *gpe_event_info, u8 action); | 97 | acpi_hw_low_set_gpe(struct acpi_gpe_event_info *gpe_event_info, u8 action); |
| 98 | 98 | ||
| 99 | acpi_status | 99 | acpi_status |
| 100 | acpi_hw_write_gpe_enable_reg(struct acpi_gpe_event_info *gpe_event_info); | ||
| 101 | |||
| 102 | acpi_status | ||
| 103 | acpi_hw_disable_gpe_block(struct acpi_gpe_xrupt_info *gpe_xrupt_info, | 100 | acpi_hw_disable_gpe_block(struct acpi_gpe_xrupt_info *gpe_xrupt_info, |
| 104 | struct acpi_gpe_block_info *gpe_block, void *context); | 101 | struct acpi_gpe_block_info *gpe_block, void *context); |
| 105 | 102 | ||
diff --git a/drivers/acpi/acpica/aclocal.h b/drivers/acpi/acpica/aclocal.h index 147a7e6bd38f..df85b53a674f 100644 --- a/drivers/acpi/acpica/aclocal.h +++ b/drivers/acpi/acpica/aclocal.h | |||
| @@ -184,8 +184,9 @@ struct acpi_namespace_node { | |||
| 184 | u8 flags; /* Miscellaneous flags */ | 184 | u8 flags; /* Miscellaneous flags */ |
| 185 | acpi_owner_id owner_id; /* Node creator */ | 185 | acpi_owner_id owner_id; /* Node creator */ |
| 186 | union acpi_name_union name; /* ACPI Name, always 4 chars per ACPI spec */ | 186 | union acpi_name_union name; /* ACPI Name, always 4 chars per ACPI spec */ |
| 187 | struct acpi_namespace_node *parent; /* Parent node */ | ||
| 187 | struct acpi_namespace_node *child; /* First child */ | 188 | struct acpi_namespace_node *child; /* First child */ |
| 188 | struct acpi_namespace_node *peer; /* Peer. Parent if ANOBJ_END_OF_PEER_LIST set */ | 189 | struct acpi_namespace_node *peer; /* First peer */ |
| 189 | 190 | ||
| 190 | /* | 191 | /* |
| 191 | * The following fields are used by the ASL compiler and disassembler only | 192 | * The following fields are used by the ASL compiler and disassembler only |
| @@ -199,7 +200,7 @@ struct acpi_namespace_node { | |||
| 199 | 200 | ||
| 200 | /* Namespace Node flags */ | 201 | /* Namespace Node flags */ |
| 201 | 202 | ||
| 202 | #define ANOBJ_END_OF_PEER_LIST 0x01 /* End-of-list, Peer field points to parent */ | 203 | #define ANOBJ_RESERVED 0x01 /* Available for use */ |
| 203 | #define ANOBJ_TEMPORARY 0x02 /* Node is create by a method and is temporary */ | 204 | #define ANOBJ_TEMPORARY 0x02 /* Node is create by a method and is temporary */ |
| 204 | #define ANOBJ_METHOD_ARG 0x04 /* Node is a method argument */ | 205 | #define ANOBJ_METHOD_ARG 0x04 /* Node is a method argument */ |
| 205 | #define ANOBJ_METHOD_LOCAL 0x08 /* Node is a method local */ | 206 | #define ANOBJ_METHOD_LOCAL 0x08 /* Node is a method local */ |
| @@ -411,6 +412,7 @@ struct acpi_handler_info { | |||
| 411 | acpi_event_handler address; /* Address of handler, if any */ | 412 | acpi_event_handler address; /* Address of handler, if any */ |
| 412 | void *context; /* Context to be passed to handler */ | 413 | void *context; /* Context to be passed to handler */ |
| 413 | struct acpi_namespace_node *method_node; /* Method node for this GPE level (saved) */ | 414 | struct acpi_namespace_node *method_node; /* Method node for this GPE level (saved) */ |
| 415 | u8 orig_flags; /* Original misc info about this GPE */ | ||
| 414 | }; | 416 | }; |
| 415 | 417 | ||
| 416 | union acpi_gpe_dispatch_info { | 418 | union acpi_gpe_dispatch_info { |
| @@ -428,7 +430,6 @@ struct acpi_gpe_event_info { | |||
| 428 | u8 flags; /* Misc info abo | ||
