aboutsummaryrefslogtreecommitdiffstats
path: root/include/acpi
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-01-12 17:45:43 -0500
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-01-12 17:45:43 -0500
commit3e7cc142c1e040fd4629ad34a54b1c5b46dc3dd3 (patch)
treebbb7a1e440caa0df16da2b05d6a443a752b8b171 /include/acpi
parent25d412d932fb3289ae5b510845d523330b80bb71 (diff)
parentc14ced0464bf5ef3a3fad6d69bbf07c80bfbaf5b (diff)
Merge branch 'acpica'
* acpica: (21 commits) ACPICA: Update version to 20131218. ACPICA: Utilities: Cleanup declarations of the acpi_gbl_debug_file global. ACPICA: Linuxize: Cleanup spaces after special macro invocations. ACPICA: Interpreter: Add additional debug info for an error case. ACPICA: Update ACPI example code to make it an actual working program. ACPICA: Add an error message if the Debugger fails initialization. ACPICA: Conditionally define a local variable that is used for debug only. ACPICA: Parser: Updates/fixes for debug output. ACPICA: Enhance ACPI warning for memory/IO address conflicts. ACPICA: Update several debug statements - no functional change. ACPICA: Improve exception handling for GPE block installation. ACPICA: Add helper macros to extract bus/segment numbers from HEST table. ACPICA: Tables: Add full support for the PCCT table, update table definition. ACPICA: Tables: Add full support for the DBG2 table. ACPICA: Add option to favor 32-bit FADT addresses. ACPICA: Cleanup the option of forcing the use of the RSDT. ACPICA: Back port and refine validation of the XSDT root table. ACPICA: Linux Header: Remove unused OSL prototypes. ACPICA: Remove unused ACPI_FREE_BUFFER macro. No functional change. ACPICA: Disassembler: Improve pathname support for emitted External() statements. ...
Diffstat (limited to 'include/acpi')
-rw-r--r--include/acpi/acpixf.h39
-rw-r--r--include/acpi/actbl.h3
-rw-r--r--include/acpi/actbl1.h10
-rw-r--r--include/acpi/actbl2.h5
-rw-r--r--include/acpi/actbl3.h15
-rw-r--r--include/acpi/actypes.h12
-rw-r--r--include/acpi/platform/acenv.h20
-rw-r--r--include/acpi/platform/aclinux.h4
8 files changed, 59 insertions, 49 deletions
diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h
index 4278aba96503..d2f16f14b419 100644
--- a/include/acpi/acpixf.h
+++ b/include/acpi/acpixf.h
@@ -46,7 +46,7 @@
46 46
47/* Current ACPICA subsystem version in YYYYMMDD format */ 47/* Current ACPICA subsystem version in YYYYMMDD format */
48 48
49#define ACPI_CA_VERSION 0x20131115 49#define ACPI_CA_VERSION 0x20131218
50 50
51#include <acpi/acconfig.h> 51#include <acpi/acconfig.h>
52#include <acpi/actypes.h> 52#include <acpi/actypes.h>
@@ -54,7 +54,6 @@
54#include <acpi/acbuffer.h> 54#include <acpi/acbuffer.h>
55 55
56extern u8 acpi_gbl_permanent_mmap; 56extern u8 acpi_gbl_permanent_mmap;
57extern u32 acpi_rsdt_forced;
58 57
59/* 58/*
60 * Globals that are publically available 59 * Globals that are publically available
@@ -72,17 +71,19 @@ extern u32 acpi_dbg_layer;
72 71
73/* ACPICA runtime options */ 72/* ACPICA runtime options */
74 73
75extern u8 acpi_gbl_enable_interpreter_slack;
76extern u8 acpi_gbl_all_methods_serialized; 74extern u8 acpi_gbl_all_methods_serialized;
77extern u8 acpi_gbl_create_osi_method;
78extern u8 acpi_gbl_use_default_register_widths;
79extern acpi_name acpi_gbl_trace_method_name;
80extern u32 acpi_gbl_trace_flags;
81extern bool acpi_gbl_enable_aml_debug_object;
82extern u8 acpi_gbl_copy_dsdt_locally; 75extern u8 acpi_gbl_copy_dsdt_locally;
83extern u8 acpi_gbl_truncate_io_addresses; 76extern u8 acpi_gbl_create_osi_method;
84extern u8 acpi_gbl_disable_auto_repair; 77extern u8 acpi_gbl_disable_auto_repair;
85extern u8 acpi_gbl_disable_ssdt_table_load; 78extern u8 acpi_gbl_disable_ssdt_table_load;
79extern u8 acpi_gbl_do_not_use_xsdt;
80extern bool acpi_gbl_enable_aml_debug_object;
81extern u8 acpi_gbl_enable_interpreter_slack;
82extern u32 acpi_gbl_trace_flags;
83extern acpi_name acpi_gbl_trace_method_name;
84extern u8 acpi_gbl_truncate_io_addresses;
85extern u8 acpi_gbl_use32_bit_fadt_addresses;
86extern u8 acpi_gbl_use_default_register_widths;
86 87
87/* 88/*
88 * Hardware-reduced prototypes. All interfaces that use these macros will 89 * Hardware-reduced prototypes. All interfaces that use these macros will
@@ -130,10 +131,9 @@ acpi_status __init acpi_terminate(void);
130 * Miscellaneous global interfaces 131 * Miscellaneous global interfaces
131 */ 132 */
132ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable(void)) 133ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable(void))
133
134ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_disable(void)) 134ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_disable(void))
135#ifdef ACPI_FUTURE_USAGE 135#ifdef ACPI_FUTURE_USAGE
136 acpi_status acpi_subsystem_status(void); 136acpi_status acpi_subsystem_status(void);
137#endif 137#endif
138 138
139#ifdef ACPI_FUTURE_USAGE 139#ifdef ACPI_FUTURE_USAGE
@@ -278,16 +278,13 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
278 acpi_install_sci_handler(acpi_sci_handler 278 acpi_install_sci_handler(acpi_sci_handler
279 address, 279 address,
280 void *context)) 280 void *context))
281
282ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 281ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
283 acpi_remove_sci_handler(acpi_sci_handler 282 acpi_remove_sci_handler(acpi_sci_handler
284 address)) 283 address))
285
286ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 284ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
287 acpi_install_global_event_handler 285 acpi_install_global_event_handler
288 (acpi_gbl_event_handler handler, 286 (acpi_gbl_event_handler handler,
289 void *context)) 287 void *context))
290
291ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 288ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
292 acpi_install_fixed_event_handler(u32 289 acpi_install_fixed_event_handler(u32
293 acpi_event, 290 acpi_event,
@@ -295,12 +292,10 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
295 handler, 292 handler,
296 void 293 void
297 *context)) 294 *context))
298
299ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 295ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
300 acpi_remove_fixed_event_handler(u32 acpi_event, 296 acpi_remove_fixed_event_handler(u32 acpi_event,
301 acpi_event_handler 297 acpi_event_handler
302 handler)) 298 handler))
303
304ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 299ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
305 acpi_install_gpe_handler(acpi_handle 300 acpi_install_gpe_handler(acpi_handle
306 gpe_device, 301 gpe_device,
@@ -309,15 +304,14 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
309 acpi_gpe_handler 304 acpi_gpe_handler
310 address, 305 address,
311 void *context)) 306 void *context))
312
313ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 307ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
314 acpi_remove_gpe_handler(acpi_handle gpe_device, 308 acpi_remove_gpe_handler(acpi_handle gpe_device,
315 u32 gpe_number, 309 u32 gpe_number,
316 acpi_gpe_handler 310 acpi_gpe_handler
317 address)) 311 address))
318acpi_status acpi_install_notify_handler(acpi_handle device, u32 handler_type, 312acpi_status acpi_install_notify_handler(acpi_handle device, u32 handler_type,
319 acpi_notify_handler handler, 313 acpi_notify_handler handler,
320 void *context); 314 void *context);
321 315
322acpi_status 316acpi_status
323acpi_remove_notify_handler(acpi_handle device, 317acpi_remove_notify_handler(acpi_handle device,
@@ -366,7 +360,6 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
366 360
367ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 361ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
368 acpi_disable_event(u32 event, u32 flags)) 362 acpi_disable_event(u32 event, u32 flags))
369
370ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_clear_event(u32 event)) 363ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_clear_event(u32 event))
371 364
372ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 365ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
@@ -404,20 +397,16 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
404 parent_device, 397 parent_device,
405 acpi_handle gpe_device, 398 acpi_handle gpe_device,
406 u32 gpe_number)) 399 u32 gpe_number))
407
408ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 400ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
409 acpi_set_gpe_wake_mask(acpi_handle gpe_device, 401 acpi_set_gpe_wake_mask(acpi_handle gpe_device,
410 u32 gpe_number, 402 u32 gpe_number,
411 u8 action)) 403 u8 action))
412
413ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 404ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
414 acpi_get_gpe_status(acpi_handle gpe_device, 405 acpi_get_gpe_status(acpi_handle gpe_device,
415 u32 gpe_number, 406 u32 gpe_number,
416 acpi_event_status 407 acpi_event_status
417 *event_status)) 408 *event_status))
418
419ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_disable_all_gpes(void)) 409ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_disable_all_gpes(void))
420
421ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable_all_runtime_gpes(void)) 410ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_enable_all_runtime_gpes(void))
422 411
423ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 412ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
@@ -431,7 +420,6 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
431 *gpe_block_address, 420 *gpe_block_address,
432 u32 register_count, 421 u32 register_count,
433 u32 interrupt_number)) 422 u32 interrupt_number))
434
435ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 423ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
436 acpi_remove_gpe_block(acpi_handle gpe_device)) 424 acpi_remove_gpe_block(acpi_handle gpe_device))
437 425
@@ -532,7 +520,6 @@ ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
532#ifdef ACPI_FUTURE_USAGE 520#ifdef ACPI_FUTURE_USAGE
533ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 521ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
534 acpi_get_timer_resolution(u32 *resolution)) 522 acpi_get_timer_resolution(u32 *resolution))
535
536ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_get_timer(u32 *ticks)) 523ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status acpi_get_timer(u32 *ticks))
537 524
538ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status 525ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status
diff --git a/include/acpi/actbl.h b/include/acpi/actbl.h
index 94970880126f..325aeae1fa99 100644
--- a/include/acpi/actbl.h
+++ b/include/acpi/actbl.h
@@ -182,6 +182,9 @@ struct acpi_table_xsdt {
182 u64 table_offset_entry[1]; /* Array of pointers to ACPI tables */ 182 u64 table_offset_entry[1]; /* Array of pointers to ACPI tables */
183}; 183};
184 184
185#define ACPI_RSDT_ENTRY_SIZE (sizeof (u32))
186#define ACPI_XSDT_ENTRY_SIZE (sizeof (u64))
187
185/******************************************************************************* 188/*******************************************************************************
186 * 189 *
187 * FACS - Firmware ACPI Control Structure (FACS) 190 * FACS - Firmware ACPI Control Structure (FACS)
diff --git a/include/acpi/actbl1.h b/include/acpi/actbl1.h
index 556c83ee6b42..4ec8c194bfe5 100644
--- a/include/acpi/actbl1.h
+++ b/include/acpi/actbl1.h
@@ -457,7 +457,7 @@ struct acpi_hest_aer_common {
457 u8 enabled; 457 u8 enabled;
458 u32 records_to_preallocate; 458 u32 records_to_preallocate;
459 u32 max_sections_per_record; 459 u32 max_sections_per_record;
460 u32 bus; 460 u32 bus; /* Bus and Segment numbers */
461 u16 device; 461 u16 device;
462 u16 function; 462 u16 function;
463 u16 device_control; 463 u16 device_control;
@@ -473,6 +473,14 @@ struct acpi_hest_aer_common {
473#define ACPI_HEST_FIRMWARE_FIRST (1) 473#define ACPI_HEST_FIRMWARE_FIRST (1)
474#define ACPI_HEST_GLOBAL (1<<1) 474#define ACPI_HEST_GLOBAL (1<<1)
475 475
476/*
477 * Macros to access the bus/segment numbers in Bus field above:
478 * Bus number is encoded in bits 7:0
479 * Segment number is encoded in bits 23:8
480 */
481#define ACPI_HEST_BUS(bus) ((bus) & 0xFF)
482#define ACPI_HEST_SEGMENT(bus) (((bus) >> 8) & 0xFFFF)
483
476/* Hardware Error Notification */ 484/* Hardware Error Notification */
477 485
478struct acpi_hest_notify { 486struct acpi_hest_notify {
diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h
index 40f7ed115452..094a906a0e98 100644
--- a/include/acpi/actbl2.h
+++ b/include/acpi/actbl2.h
@@ -327,6 +327,11 @@ struct acpi_table_dbg2 {
327 u32 info_count; 327 u32 info_count;
328}; 328};
329 329
330struct acpi_dbg2_header {
331 u32 info_offset;
332 u32 info_count;
333};
334
330/* Debug Device Information Subtable */ 335/* Debug Device Information Subtable */
331 336
332struct acpi_dbg2_device { 337struct acpi_dbg2_device {
diff --git a/include/acpi/actbl3.h b/include/acpi/actbl3.h
index e2c0931a3d67..01c2a9013e40 100644
--- a/include/acpi/actbl3.h
+++ b/include/acpi/actbl3.h
@@ -374,16 +374,22 @@ struct acpi_mpst_shared {
374struct acpi_table_pcct { 374struct acpi_table_pcct {
375 struct acpi_table_header header; /* Common ACPI table header */ 375 struct acpi_table_header header; /* Common ACPI table header */
376 u32 flags; 376 u32 flags;
377 u32 latency; 377 u64 reserved;
378 u32 reserved;
379}; 378};
380 379
381/* Values for Flags field above */ 380/* Values for Flags field above */
382 381
383#define ACPI_PCCT_DOORBELL 1 382#define ACPI_PCCT_DOORBELL 1
384 383
384/* Values for subtable type in struct acpi_subtable_header */
385
386enum acpi_pcct_type {
387 ACPI_PCCT_TYPE_GENERIC_SUBSPACE = 0,
388 ACPI_PCCT_TYPE_RESERVED = 1 /* 1 and greater are reserved */
389};
390
385/* 391/*
386 * PCCT subtables 392 * PCCT Subtables, correspond to Type in struct acpi_subtable_header
387 */ 393 */
388 394
389/* 0: Generic Communications Subspace */ 395/* 0: Generic Communications Subspace */
@@ -396,6 +402,9 @@ struct acpi_pcct_subspace {
396 struct acpi_generic_address doorbell_register; 402 struct acpi_generic_address doorbell_register;
397 u64 preserve_mask; 403 u64 preserve_mask;
398 u64 write_mask; 404 u64 write_mask;
405 u32 latency;
406 u32 max_access_rate;
407 u16 min_turnaround_time;
399}; 408};
400 409
401/* 410/*
diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h
index 809b1a0fee7f..68a3ada689c9 100644
--- a/include/acpi/actypes.h
+++ b/include/acpi/actypes.h
@@ -928,8 +928,8 @@ struct acpi_object_list {
928 * Miscellaneous common Data Structures used by the interfaces 928 * Miscellaneous common Data Structures used by the interfaces
929 */ 929 */
930#define ACPI_NO_BUFFER 0 930#define ACPI_NO_BUFFER 0
931#define ACPI_ALLOCATE_BUFFER (acpi_size) (-1) 931#define ACPI_ALLOCATE_BUFFER (acpi_size) (-1) /* Let ACPICA allocate buffer */
932#define ACPI_ALLOCATE_LOCAL_BUFFER (acpi_size) (-2) 932#define ACPI_ALLOCATE_LOCAL_BUFFER (acpi_size) (-2) /* For internal use only (enables tracking) */
933 933
934struct acpi_buffer { 934struct acpi_buffer {
935 acpi_size length; /* Length in bytes of the buffer */ 935 acpi_size length; /* Length in bytes of the buffer */
@@ -937,14 +937,6 @@ struct acpi_buffer {
937}; 937};
938 938
939/* 939/*
940 * Free a buffer created in an struct acpi_buffer via ACPI_ALLOCATE_BUFFER.
941 * Note: We use acpi_os_free here because acpi_os_allocate was used to allocate
942 * the buffer. This purposefully bypasses the internal allocation tracking
943 * mechanism (if it is enabled).
944 */
945#define ACPI_FREE_BUFFER(b) acpi_os_free((b).pointer)
946
947/*
948 * name_type for acpi_get_name 940 * name_type for acpi_get_name
949 */ 941 */
950#define ACPI_FULL_PATHNAME 0 942#define ACPI_FULL_PATHNAME 0
diff --git a/include/acpi/platform/acenv.h b/include/acpi/platform/acenv.h
index 974d3ef7c141..b402eb67af83 100644
--- a/include/acpi/platform/acenv.h
+++ b/include/acpi/platform/acenv.h
@@ -96,13 +96,14 @@
96#endif 96#endif
97 97
98/* 98/*
99 * acpi_bin/acpi_dump/acpi_src/acpi_xtract configuration. All single 99 * acpi_bin/acpi_dump/acpi_src/acpi_xtract/Example configuration. All single
100 * threaded, with no debug output. 100 * threaded, with no debug output.
101 */ 101 */
102#if (defined ACPI_BIN_APP) || \ 102#if (defined ACPI_BIN_APP) || \
103 (defined ACPI_DUMP_APP) || \ 103 (defined ACPI_DUMP_APP) || \
104 (defined ACPI_SRC_APP) || \ 104 (defined ACPI_SRC_APP) || \
105 (defined ACPI_XTRACT_APP) 105 (defined ACPI_XTRACT_APP) || \
106 (defined ACPI_EXAMPLE_APP)
106#define ACPI_APPLICATION 107#define ACPI_APPLICATION
107#define ACPI_SINGLE_THREADED 108#define ACPI_SINGLE_THREADED
108#endif 109#endif
@@ -394,4 +395,13 @@ typedef char *va_list;
394 395
395#endif /* ACPI_USE_SYSTEM_CLIBRARY */ 396#endif /* ACPI_USE_SYSTEM_CLIBRARY */
396 397
398#ifndef ACPI_FILE
399#ifdef ACPI_APPLICATION
400#include <stdio.h>
401#define ACPI_FILE FILE *
402#else
403#define ACPI_FILE void *
404#endif /* ACPI_APPLICATION */
405#endif /* ACPI_FILE */
406
397#endif /* __ACENV_H__ */ 407#endif /* __ACENV_H__ */
diff --git a/include/acpi/platform/aclinux.h b/include/acpi/platform/aclinux.h
index 28f4f4dba0b6..008aa287c7a9 100644
--- a/include/acpi/platform/aclinux.h
+++ b/include/acpi/platform/aclinux.h
@@ -239,10 +239,6 @@ void acpi_os_unmap_memory(void __iomem * logical_address, acpi_size size);
239 */ 239 */
240void early_acpi_os_unmap_memory(void __iomem * virt, acpi_size size); 240void early_acpi_os_unmap_memory(void __iomem * virt, acpi_size size);
241 241
242void acpi_os_gpe_count(u32 gpe_number);
243
244void acpi_os_fixed_event_count(u32 fixed_event_number);
245
246#endif /* __KERNEL__ */ 242#endif /* __KERNEL__ */
247 243
248#endif /* __ACLINUX_H__ */ 244#endif /* __ACLINUX_H__ */