📄 aclocal.h
字号:
/* The parse node is the fundamental element of the parse tree */struct acpi_parse_obj_asl{ ACPI_PARSE_COMMON union acpi_parse_object *child; union acpi_parse_object *parent_method; char *filename; char *external_name; char *namepath; char name_seg[4]; u32 extra_value; u32 column; u32 line_number; u32 logical_line_number; u32 logical_byte_offset; u32 end_line; u32 end_logical_line; u32 acpi_btype; u32 aml_length; u32 aml_subtree_length; u32 final_aml_length; u32 final_aml_offset; u32 compile_flags; u16 parse_opcode; u8 aml_opcode_length; u8 aml_pkg_len_bytes; u8 extra; char parse_op_name[12];};union acpi_parse_object{ struct acpi_parse_obj_common common; struct acpi_parse_obj_named named; struct acpi_parse_obj_asl asl;};/* * Parse state - one state per parser invocation and each control * method. */struct acpi_parse_state{ u32 aml_size; u8 *aml_start; /* First AML byte */ u8 *aml; /* Next AML byte */ u8 *aml_end; /* (last + 1) AML byte */ u8 *pkg_start; /* Current package begin */ u8 *pkg_end; /* Current package end */ union acpi_parse_object *start_op; /* Root of parse tree */ struct acpi_namespace_node *start_node; union acpi_generic_state *scope; /* Current scope */ union acpi_parse_object *start_scope;};/* Parse object flags */#define ACPI_PARSEOP_GENERIC 0x01#define ACPI_PARSEOP_NAMED 0x02#define ACPI_PARSEOP_DEFERRED 0x04#define ACPI_PARSEOP_BYTELIST 0x08#define ACPI_PARSEOP_IN_CACHE 0x80/* Parse object disasm_flags */#define ACPI_PARSEOP_IGNORE 0x01#define ACPI_PARSEOP_PARAMLIST 0x02#define ACPI_PARSEOP_EMPTY_TERMLIST 0x04#define ACPI_PARSEOP_SPECIAL 0x10/***************************************************************************** * * Hardware (ACPI registers) and PNP * ****************************************************************************/#define PCI_ROOT_HID_STRING "PNP0A03"struct acpi_bit_register_info{ u8 parent_register; u8 bit_position; u16 access_bit_mask;};/* * Register IDs * These are the full ACPI registers */#define ACPI_REGISTER_PM1_STATUS 0x01#define ACPI_REGISTER_PM1_ENABLE 0x02#define ACPI_REGISTER_PM1_CONTROL 0x03#define ACPI_REGISTER_PM1A_CONTROL 0x04#define ACPI_REGISTER_PM1B_CONTROL 0x05#define ACPI_REGISTER_PM2_CONTROL 0x06#define ACPI_REGISTER_PM_TIMER 0x07#define ACPI_REGISTER_PROCESSOR_BLOCK 0x08#define ACPI_REGISTER_SMI_COMMAND_BLOCK 0x09/* Masks used to access the bit_registers */#define ACPI_BITMASK_TIMER_STATUS 0x0001#define ACPI_BITMASK_BUS_MASTER_STATUS 0x0010#define ACPI_BITMASK_GLOBAL_LOCK_STATUS 0x0020#define ACPI_BITMASK_POWER_BUTTON_STATUS 0x0100#define ACPI_BITMASK_SLEEP_BUTTON_STATUS 0x0200#define ACPI_BITMASK_RT_CLOCK_STATUS 0x0400#define ACPI_BITMASK_WAKE_STATUS 0x8000#define ACPI_BITMASK_ALL_FIXED_STATUS (ACPI_BITMASK_TIMER_STATUS | \ ACPI_BITMASK_BUS_MASTER_STATUS | \ ACPI_BITMASK_GLOBAL_LOCK_STATUS | \ ACPI_BITMASK_POWER_BUTTON_STATUS | \ ACPI_BITMASK_SLEEP_BUTTON_STATUS | \ ACPI_BITMASK_RT_CLOCK_STATUS | \ ACPI_BITMASK_WAKE_STATUS)#define ACPI_BITMASK_TIMER_ENABLE 0x0001#define ACPI_BITMASK_GLOBAL_LOCK_ENABLE 0x0020#define ACPI_BITMASK_POWER_BUTTON_ENABLE 0x0100#define ACPI_BITMASK_SLEEP_BUTTON_ENABLE 0x0200#define ACPI_BITMASK_RT_CLOCK_ENABLE 0x0400#define ACPI_BITMASK_SCI_ENABLE 0x0001#define ACPI_BITMASK_BUS_MASTER_RLD 0x0002#define ACPI_BITMASK_GLOBAL_LOCK_RELEASE 0x0004#define ACPI_BITMASK_SLEEP_TYPE_X 0x1C00#define ACPI_BITMASK_SLEEP_ENABLE 0x2000#define ACPI_BITMASK_ARB_DISABLE 0x0001/* Raw bit position of each bit_register */#define ACPI_BITPOSITION_TIMER_STATUS 0x00#define ACPI_BITPOSITION_BUS_MASTER_STATUS 0x04#define ACPI_BITPOSITION_GLOBAL_LOCK_STATUS 0x05#define ACPI_BITPOSITION_POWER_BUTTON_STATUS 0x08#define ACPI_BITPOSITION_SLEEP_BUTTON_STATUS 0x09#define ACPI_BITPOSITION_RT_CLOCK_STATUS 0x0A#define ACPI_BITPOSITION_WAKE_STATUS 0x0F#define ACPI_BITPOSITION_TIMER_ENABLE 0x00#define ACPI_BITPOSITION_GLOBAL_LOCK_ENABLE 0x05#define ACPI_BITPOSITION_POWER_BUTTON_ENABLE 0x08#define ACPI_BITPOSITION_SLEEP_BUTTON_ENABLE 0x09#define ACPI_BITPOSITION_RT_CLOCK_ENABLE 0x0A#define ACPI_BITPOSITION_SCI_ENABLE 0x00#define ACPI_BITPOSITION_BUS_MASTER_RLD 0x01#define ACPI_BITPOSITION_GLOBAL_LOCK_RELEASE 0x02#define ACPI_BITPOSITION_SLEEP_TYPE_X 0x0A#define ACPI_BITPOSITION_SLEEP_ENABLE 0x0D#define ACPI_BITPOSITION_ARB_DISABLE 0x00/***************************************************************************** * * Resource descriptors * ****************************************************************************//* resource_type values */#define ACPI_RESOURCE_TYPE_MEMORY_RANGE 0#define ACPI_RESOURCE_TYPE_IO_RANGE 1#define ACPI_RESOURCE_TYPE_BUS_NUMBER_RANGE 2/* Resource descriptor types and masks */#define ACPI_RDESC_TYPE_LARGE 0x80#define ACPI_RDESC_TYPE_SMALL 0x00#define ACPI_RDESC_TYPE_MASK 0x80#define ACPI_RDESC_SMALL_MASK 0x78 /* Only bits 6:3 contain the type *//* * Small resource descriptor types * Note: The 3 length bits (2:0) must be zero */#define ACPI_RDESC_TYPE_IRQ_FORMAT 0x20#define ACPI_RDESC_TYPE_DMA_FORMAT 0x28#define ACPI_RDESC_TYPE_START_DEPENDENT 0x30#define ACPI_RDESC_TYPE_END_DEPENDENT 0x38#define ACPI_RDESC_TYPE_IO_PORT 0x40#define ACPI_RDESC_TYPE_FIXED_IO_PORT 0x48#define ACPI_RDESC_TYPE_SMALL_VENDOR 0x70#define ACPI_RDESC_TYPE_END_TAG 0x78/* * Large resource descriptor types */#define ACPI_RDESC_TYPE_MEMORY_24 0x81#define ACPI_RDESC_TYPE_GENERAL_REGISTER 0x82#define ACPI_RDESC_TYPE_LARGE_VENDOR 0x84#define ACPI_RDESC_TYPE_MEMORY_32 0x85#define ACPI_RDESC_TYPE_FIXED_MEMORY_32 0x86#define ACPI_RDESC_TYPE_DWORD_ADDRESS_SPACE 0x87#define ACPI_RDESC_TYPE_WORD_ADDRESS_SPACE 0x88#define ACPI_RDESC_TYPE_EXTENDED_XRUPT 0x89#define ACPI_RDESC_TYPE_QWORD_ADDRESS_SPACE 0x8A#define ACPI_RDESC_TYPE_EXTENDED_ADDRESS_SPACE 0x8B/***************************************************************************** * * Miscellaneous * ****************************************************************************/#define ACPI_ASCII_ZERO 0x30/***************************************************************************** * * Debugger * ****************************************************************************/struct acpi_db_method_info{ acpi_handle thread_gate; char *name; char **args; u32 flags; u32 num_loops; char pathname[128];};struct acpi_integrity_info{ u32 nodes; u32 objects;};#define ACPI_DB_REDIRECTABLE_OUTPUT 0x01#define ACPI_DB_CONSOLE_OUTPUT 0x02#define ACPI_DB_DUPLICATE_OUTPUT 0x03/***************************************************************************** * * Debug * ****************************************************************************/struct acpi_debug_print_info{ u32 component_id; char *proc_name; char *module_name;};/* Entry for a memory allocation (debug only) */#define ACPI_MEM_MALLOC 0#define ACPI_MEM_CALLOC 1#define ACPI_MAX_MODULE_NAME 16#define ACPI_COMMON_DEBUG_MEM_HEADER \ struct acpi_debug_mem_block *previous; \ struct acpi_debug_mem_block *next; \ u32 size; \ u32 component; \ u32 line; \ char module[ACPI_MAX_MODULE_NAME]; \ u8 alloc_type;struct acpi_debug_mem_header{ ACPI_COMMON_DEBUG_MEM_HEADER};struct acpi_debug_mem_block{ ACPI_COMMON_DEBUG_MEM_HEADER u64 user_space;};#define ACPI_MEM_LIST_GLOBAL 0#define ACPI_MEM_LIST_NSNODE 1#define ACPI_MEM_LIST_FIRST_CACHE_LIST 2#define ACPI_MEM_LIST_STATE 2#define ACPI_MEM_LIST_PSNODE 3#define ACPI_MEM_LIST_PSNODE_EXT 4#define ACPI_MEM_LIST_OPERAND 5#define ACPI_MEM_LIST_WALK 6#define ACPI_MEM_LIST_MAX 6#define ACPI_NUM_MEM_LISTS 7struct acpi_memory_list{ void *list_head; u16 link_offset; u16 max_cache_depth; u16 cache_depth; u16 object_size;#ifdef ACPI_DBG_TRACK_ALLOCATIONS /* Statistics for debug memory tracking only */ u32 total_allocated; u32 total_freed; u32 current_total_size; u32 cache_requests; u32 cache_hits; char *list_name;#endif};#endif /* __ACLOCAL_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -