acdispat.h

来自「Linux Kernel 2.6.9 for OMAP1710」· C头文件 代码 · 共 513 行

H
513
字号
/****************************************************************************** * * Name: acdispat.h - dispatcher (parser to interpreter interface) * *****************************************************************************//* * Copyright (C) 2000 - 2004, R. Byron Moore * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions, and the following disclaimer, *    without modification. * 2. Redistributions in binary form must reproduce at minimum a disclaimer *    substantially similar to the "NO WARRANTY" disclaimer below *    ("Disclaimer") and any redistribution must be conditioned upon *    including a substantially similar Disclaimer requirement for further *    binary redistribution. * 3. Neither the names of the above-listed copyright holders nor the names *    of any contributors may be used to endorse or promote products derived *    from this software without specific prior written permission. * * Alternatively, this software may be distributed under the terms of the * GNU General Public License ("GPL") version 2 as published by the Free * Software Foundation. * * NO WARRANTY * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGES. */#ifndef _ACDISPAT_H_#define _ACDISPAT_H_#define NAMEOF_LOCAL_NTE    "__L0"#define NAMEOF_ARG_NTE      "__A0"/* Common interfaces */acpi_statusacpi_ds_obj_stack_push (	void                            *object,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_obj_stack_pop (	u32                             pop_count,	struct acpi_walk_state          *walk_state);void *acpi_ds_obj_stack_get_value (	u32                             index,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_obj_stack_pop_object (	union acpi_operand_object       **object,	struct acpi_walk_state          *walk_state);/* dsopcode - support for late evaluation */acpi_statusacpi_ds_execute_arguments (	struct acpi_namespace_node      *node,	struct acpi_namespace_node      *scope_node,	u32                             aml_length,	u8                              *aml_start);acpi_statusacpi_ds_get_buffer_field_arguments (	union acpi_operand_object       *obj_desc);acpi_statusacpi_ds_get_region_arguments (	union acpi_operand_object       *rgn_desc);acpi_statusacpi_ds_get_buffer_arguments (	union acpi_operand_object       *obj_desc);acpi_statusacpi_ds_get_package_arguments (	union acpi_operand_object       *obj_desc);acpi_statusacpi_ds_init_buffer_field (	u16                             aml_opcode,	union acpi_operand_object       *obj_desc,	union acpi_operand_object       *buffer_desc,	union acpi_operand_object       *offset_desc,	union acpi_operand_object       *length_desc,	union acpi_operand_object       *result_desc);acpi_statusacpi_ds_eval_buffer_field_operands (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op);acpi_statusacpi_ds_eval_region_operands (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op);acpi_statusacpi_ds_eval_data_object_operands (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op,	union acpi_operand_object       *obj_desc);acpi_statusacpi_ds_initialize_region (	acpi_handle                     obj_handle);/* dsctrl - Parser/Interpreter interface, control stack routines */acpi_statusacpi_ds_exec_begin_control_op (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op);acpi_statusacpi_ds_exec_end_control_op (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op);/* dsexec - Parser/Interpreter interface, method execution callbacks */acpi_statusacpi_ds_get_predicate_value (	struct acpi_walk_state          *walk_state,	union acpi_operand_object       *result_obj);acpi_statusacpi_ds_exec_begin_op (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         **out_op);acpi_statusacpi_ds_exec_end_op (	struct acpi_walk_state          *state);/* dsfield - Parser/Interpreter interface for AML fields */acpi_statusacpi_ds_get_field_names (	struct acpi_create_field_info   *info,	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *arg);acpi_statusacpi_ds_create_field (	union acpi_parse_object         *op,	struct acpi_namespace_node      *region_node,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_create_bank_field (	union acpi_parse_object         *op,	struct acpi_namespace_node      *region_node,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_create_index_field (	union acpi_parse_object         *op,	struct acpi_namespace_node      *region_node,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_create_buffer_field (	union acpi_parse_object         *op,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_init_field_objects (	union acpi_parse_object         *op,	struct acpi_walk_state          *walk_state);/* dsload - Parser/Interpreter interface, namespace load callbacks */acpi_statusacpi_ds_load1_begin_op (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         **out_op);acpi_statusacpi_ds_load1_end_op (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_load2_begin_op (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         **out_op);acpi_statusacpi_ds_load2_end_op (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_init_callbacks (	struct acpi_walk_state          *walk_state,	u32                             pass_number);/* dsmthdat - method data (locals/args) */acpi_statusacpi_ds_store_object_to_local (	u16                             opcode,	u32                             index,	union acpi_operand_object       *src_desc,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_method_data_get_entry (	u16                             opcode,	u32                             index,	struct acpi_walk_state          *walk_state,	union acpi_operand_object       ***node);voidacpi_ds_method_data_delete_all (	struct acpi_walk_state          *walk_state);u8acpi_ds_is_method_value (	union acpi_operand_object       *obj_desc);acpi_object_typeacpi_ds_method_data_get_type (	u16                             opcode,	u32                             index,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_method_data_get_value (	u16                             opcode,	u32                             index,	struct acpi_walk_state          *walk_state,	union acpi_operand_object       **dest_desc);voidacpi_ds_method_data_delete_value (	u16                             opcode,	u32                             index,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_method_data_init_args (	union acpi_operand_object       **params,	u32                             max_param_count,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_method_data_get_node (	u16                             opcode,	u32                             index,	struct acpi_walk_state          *walk_state,	struct acpi_namespace_node      **node);voidacpi_ds_method_data_init (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_method_data_set_value (	u16                             opcode,	u32                             index,	union acpi_operand_object       *object,	struct acpi_walk_state          *walk_state);/* dsmethod - Parser/Interpreter interface - control method parsing */acpi_statusacpi_ds_parse_method (	acpi_handle                     obj_handle);acpi_statusacpi_ds_call_control_method (	struct acpi_thread_state        *thread,	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op);acpi_statusacpi_ds_restart_control_method (	struct acpi_walk_state          *walk_state,	union acpi_operand_object       *return_desc);acpi_statusacpi_ds_terminate_control_method (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_begin_method_execution (	struct acpi_namespace_node      *method_node,	union acpi_operand_object       *obj_desc,	struct acpi_namespace_node      *calling_method_node);/* dsobj - Parser/Interpreter interface - object initialization and conversion */acpi_statusacpi_ds_init_one_object (	acpi_handle                     obj_handle,	u32                             level,	void                            *context,	void                            **return_value);acpi_statusacpi_ds_initialize_objects (	struct acpi_table_desc          *table_desc,	struct acpi_namespace_node      *start_node);acpi_statusacpi_ds_build_internal_buffer_obj (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op,	u32                             buffer_length,	union acpi_operand_object       **obj_desc_ptr);acpi_statusacpi_ds_build_internal_package_obj (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op,	u32                             package_length,	union acpi_operand_object       **obj_desc);acpi_statusacpi_ds_build_internal_object (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op,	union acpi_operand_object       **obj_desc_ptr);acpi_statusacpi_ds_init_object_from_op (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op,	u16                             opcode,	union acpi_operand_object       **obj_desc);acpi_statusacpi_ds_create_node (	struct acpi_walk_state          *walk_state,	struct acpi_namespace_node      *node,	union acpi_parse_object         *op);/* dsutils - Parser/Interpreter interface utility routines */u8acpi_ds_is_result_used (	union acpi_parse_object         *op,	struct acpi_walk_state          *walk_state);voidacpi_ds_delete_result_if_not_used (	union acpi_parse_object         *op,	union acpi_operand_object       *result_obj,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_create_operand (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *arg,	u32                             args_remaining);acpi_statusacpi_ds_create_operands (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *first_arg);acpi_statusacpi_ds_resolve_operands (	struct acpi_walk_state          *walk_state);voidacpi_ds_clear_operands (	struct acpi_walk_state          *walk_state);/* * dswscope - Scope Stack manipulation */acpi_statusacpi_ds_scope_stack_push (	struct acpi_namespace_node      *node,	acpi_object_type                type,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_scope_stack_pop (	struct acpi_walk_state          *walk_state);voidacpi_ds_scope_stack_clear (	struct acpi_walk_state          *walk_state);/* dswstate - parser WALK_STATE management routines */struct acpi_walk_state *acpi_ds_create_walk_state (	acpi_owner_id                   owner_id,	union acpi_parse_object         *origin,	union acpi_operand_object       *mth_desc,	struct acpi_thread_state        *thread);acpi_statusacpi_ds_init_aml_walk (	struct acpi_walk_state          *walk_state,	union acpi_parse_object         *op,	struct acpi_namespace_node      *method_node,	u8                              *aml_start,	u32                             aml_length,	struct acpi_parameter_info      *info,	u32                             pass_number);acpi_statusacpi_ds_obj_stack_delete_all (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_obj_stack_pop_and_delete (	u32                             pop_count,	struct acpi_walk_state          *walk_state);voidacpi_ds_delete_walk_state (	struct acpi_walk_state          *walk_state);struct acpi_walk_state *acpi_ds_pop_walk_state (	struct acpi_thread_state        *thread);voidacpi_ds_push_walk_state (	struct acpi_walk_state          *walk_state,	struct acpi_thread_state        *thread);acpi_statusacpi_ds_result_stack_pop (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_result_stack_push (	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_result_stack_clear (	struct acpi_walk_state          *walk_state);struct acpi_walk_state *acpi_ds_get_current_walk_state (	struct acpi_thread_state        *thread);voidacpi_ds_delete_walk_state_cache (	void);acpi_statusacpi_ds_result_insert (	void                            *object,	u32                             index,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_result_remove (	union acpi_operand_object       **object,	u32                             index,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_result_pop (	union acpi_operand_object       **object,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_result_push (	union acpi_operand_object       *object,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ds_result_pop_from_bottom (	union acpi_operand_object       **object,	struct acpi_walk_state          *walk_state);#endif /* _ACDISPAT_H_ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?