aboutsummaryrefslogtreecommitdiffstats
path: root/include/acpi/aclocal.h
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2005-09-30 19:03:00 -0400
committerLen Brown <len.brown@intel.com>2005-12-10 00:20:25 -0500
commit50eca3eb89d73d9f0aa070b126c7ee6a616016ab (patch)
treeb2d06d21b34b9bd17eea4c53cff1f3866fa1b21d /include/acpi/aclocal.h
parent3d5271f9883cba7b54762bc4fe027d4172f06db7 (diff)
[ACPI] ACPICA 20050930
Completed a major overhaul of the Resource Manager code - specifically, optimizations in the area of the AML/internal resource conversion code. The code has been optimized to simplify and eliminate duplicated code, CPU stack use has been decreased by optimizing function parameters and local variables, and naming conventions across the manager have been standardized for clarity and ease of maintenance (this includes function, parameter, variable, and struct/typedef names.) All Resource Manager dispatch and information tables have been moved to a single location for clarity and ease of maintenance. One new file was created, named "rsinfo.c". The ACPI return macros (return_ACPI_STATUS, etc.) have been modified to guarantee that the argument is not evaluated twice, making them less prone to macro side-effects. However, since there exists the possibility of additional stack use if a particular compiler cannot optimize them (such as in the debug generation case), the original macros are optionally available. Note that some invocations of the return_VALUE macro may now cause size mismatch warnings; the return_UINT8 and return_UINT32 macros are provided to eliminate these. (From Randy Dunlap) Implemented a new mechanism to enable debug tracing for individual control methods. A new external interface, acpi_debug_trace(), is provided to enable this mechanism. The intent is to allow the host OS to easily enable and disable tracing for problematic control methods. This interface can be easily exposed to a user or debugger interface if desired. See the file psxface.c for details. acpi_ut_callocate() will now return a valid pointer if a length of zero is specified - a length of one is used and a warning is issued. This matches the behavior of acpi_ut_allocate(). Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi/aclocal.h')
-rw-r--r--include/acpi/aclocal.h79
1 files changed, 36 insertions, 43 deletions
diff --git a/include/acpi/aclocal.h b/include/acpi/aclocal.h
index 76ac1533c40..dca0d40ea39 100644
--- a/include/acpi/aclocal.h
+++ b/include/acpi/aclocal.h
@@ -735,59 +735,52 @@ struct acpi_bit_register_info {
735 735
736/* resource_type values */ 736/* resource_type values */
737 737
738#define ACPI_RESOURCE_TYPE_MEMORY_RANGE 0 738#define ACPI_ADDRESS_TYPE_MEMORY_RANGE 0
739#define ACPI_RESOURCE_TYPE_IO_RANGE 1 739#define ACPI_ADDRESS_TYPE_IO_RANGE 1
740#define ACPI_RESOURCE_TYPE_BUS_NUMBER_RANGE 2 740#define ACPI_ADDRESS_TYPE_BUS_NUMBER_RANGE 2
741 741
742/* Resource descriptor types and masks */ 742/* Resource descriptor types and masks */
743 743
744#define ACPI_RDESC_TYPE_LARGE 0x80 744#define ACPI_RESOURCE_NAME_LARGE 0x80
745#define ACPI_RDESC_TYPE_SMALL 0x00 745#define ACPI_RESOURCE_NAME_SMALL 0x00
746 746
747#define ACPI_RDESC_SMALL_MASK 0x78 /* Bits 6:3 contain the type */ 747#define ACPI_RESOURCE_NAME_SMALL_MASK 0x78 /* Bits 6:3 contain the type */
748#define ACPI_RDESC_SMALL_LENGTH_MASK 0x07 /* Bits 2:0 contain the length */ 748#define ACPI_RESOURCE_NAME_SMALL_LENGTH_MASK 0x07 /* Bits 2:0 contain the length */
749#define ACPI_RDESC_LARGE_MASK 0x7F /* Bits 6:0 contain the type */ 749#define ACPI_RESOURCE_NAME_LARGE_MASK 0x7F /* Bits 6:0 contain the type */
750 750
751/* 751/*
752 * Small resource descriptor types 752 * Small resource descriptor "names" as defined by the ACPI specification.
753 * Note: Bits 2:0 are used for the descriptor length 753 * Note: Bits 2:0 are used for the descriptor length
754 */ 754 */
755#define ACPI_RDESC_TYPE_IRQ_FORMAT 0x20 755#define ACPI_RESOURCE_NAME_IRQ 0x20
756#define ACPI_RDESC_TYPE_DMA_FORMAT 0x28 756#define ACPI_RESOURCE_NAME_DMA 0x28
757#define ACPI_RDESC_TYPE_START_DEPENDENT 0x30 757#define ACPI_RESOURCE_NAME_START_DEPENDENT 0x30
758#define ACPI_RDESC_TYPE_END_DEPENDENT 0x38 758#define ACPI_RESOURCE_NAME_END_DEPENDENT 0x38
759#define ACPI_RDESC_TYPE_IO_PORT 0x40 759#define ACPI_RESOURCE_NAME_IO 0x40
760#define ACPI_RDESC_TYPE_FIXED_IO_PORT 0x48 760#define ACPI_RESOURCE_NAME_FIXED_IO 0x48
761#define ACPI_RDESC_TYPE_RESERVED_S1 0x50 761#define ACPI_RESOURCE_NAME_RESERVED_S1 0x50
762#define ACPI_RDESC_TYPE_RESERVED_S2 0x58 762#define ACPI_RESOURCE_NAME_RESERVED_S2 0x58
763#define ACPI_RDESC_TYPE_RESERVED_S3 0x60 763#define ACPI_RESOURCE_NAME_RESERVED_S3 0x60
764#define ACPI_RDESC_TYPE_RESERVED_S4 0x68 764#define ACPI_RESOURCE_NAME_RESERVED_S4 0x68
765#define ACPI_RDESC_TYPE_SMALL_VENDOR 0x70 765#define ACPI_RESOURCE_NAME_VENDOR_SMALL 0x70
766#define ACPI_RDESC_TYPE_END_TAG 0x78 766#define ACPI_RESOURCE_NAME_END_TAG 0x78
767 767
768/* 768/*
769 * Large resource descriptor types 769 * Large resource descriptor "names" as defined by the ACPI specification.
770 * Note: includes the Large Descriptor bit in bit[7]
770 */ 771 */
771#define ACPI_RDESC_TYPE_MEMORY_24 0x81 772#define ACPI_RESOURCE_NAME_MEMORY24 0x81
772#define ACPI_RDESC_TYPE_GENERIC_REGISTER 0x82 773#define ACPI_RESOURCE_NAME_GENERIC_REGISTER 0x82
773#define ACPI_RDESC_TYPE_RESERVED_L1 0x83 774#define ACPI_RESOURCE_NAME_RESERVED_L1 0x83
774#define ACPI_RDESC_TYPE_LARGE_VENDOR 0x84 775#define ACPI_RESOURCE_NAME_VENDOR_LARGE 0x84
775#define ACPI_RDESC_TYPE_MEMORY_32 0x85 776#define ACPI_RESOURCE_NAME_MEMORY32 0x85
776#define ACPI_RDESC_TYPE_FIXED_MEMORY_32 0x86 777#define ACPI_RESOURCE_NAME_FIXED_MEMORY32 0x86
777#define ACPI_RDESC_TYPE_DWORD_ADDRESS_SPACE 0x87 778#define ACPI_RESOURCE_NAME_ADDRESS32 0x87
778#define ACPI_RDESC_TYPE_WORD_ADDRESS_SPACE 0x88 779#define ACPI_RESOURCE_NAME_ADDRESS16 0x88
779#define ACPI_RDESC_TYPE_EXTENDED_XRUPT 0x89 780#define ACPI_RESOURCE_NAME_EXTENDED_IRQ 0x89
780#define ACPI_RDESC_TYPE_QWORD_ADDRESS_SPACE 0x8A 781#define ACPI_RESOURCE_NAME_ADDRESS64 0x8A
781#define ACPI_RDESC_TYPE_EXTENDED_ADDRESS_SPACE 0x8B 782#define ACPI_RESOURCE_NAME_EXTENDED_ADDRESS64 0x8B
782#define ACPI_RDESC_LARGE_MAX 0x8B 783#define ACPI_RESOURCE_NAME_LARGE_MAX 0x8B
783
784/*
785 * Minimum lengths for descriptors with optional fields
786 */
787#define ACPI_RDESC_QWORD_MIN 43
788#define ACPI_RDESC_DWORD_MIN 23
789#define ACPI_RDESC_WORD_MIN 13
790#define ACPI_RDESC_EXT_XRUPT_MIN 6
791 784
792/***************************************************************************** 785/*****************************************************************************
793 * 786 *
@@ -795,7 +788,7 @@ struct acpi_bit_register_info {
795 * 788 *
796 ****************************************************************************/ 789 ****************************************************************************/
797 790
798#define ACPI_ASCII_ZERO 0x30 791#define ACPI_ASCII_ZERO 0x30
799 792
800/***************************************************************************** 793/*****************************************************************************
801 * 794 *