X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Facpi%2Facparser.h;h=9d49d3c41cd924ed6c768cd3701e5da3a4d73232;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=42cc5b4d32a80b4a40a02df5a0c95e80c5462af2;hpb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;p=linux-2.6.git diff --git a/include/acpi/acparser.h b/include/acpi/acparser.h index 42cc5b4d3..9d49d3c41 100644 --- a/include/acpi/acparser.h +++ b/include/acpi/acparser.h @@ -5,7 +5,7 @@ *****************************************************************************/ /* - * Copyright (C) 2000 - 2004, R. Byron Moore + * Copyright (C) 2000 - 2006, R. Byron Moore * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -41,18 +41,15 @@ * POSSIBILITY OF SUCH DAMAGES. */ - #ifndef __ACPARSER_H__ #define __ACPARSER_H__ - #define OP_HAS_RETURN_VALUE 1 -/* variable # arguments */ +/* Variable number of arguments. This field must be 32 bits */ #define ACPI_VAR_ARGS ACPI_UINT32_MAX - #define ACPI_PARSE_DELETE_TREE 0x0001 #define ACPI_PARSE_NO_TREE_DELETE 0x0000 #define ACPI_PARSE_TREE_MASK 0x0001 @@ -63,18 +60,7 @@ #define ACPI_PARSE_MODE_MASK 0x0030 #define ACPI_PARSE_DEFERRED_OP 0x0100 - -/* Parser external interfaces */ - -acpi_status -acpi_psx_load_table ( - u8 *pcode_addr, - u32 pcode_length); - -acpi_status -acpi_psx_execute ( - struct acpi_parameter_info *info); - +#define ACPI_PARSE_DISASSEMBLE 0x0200 /****************************************************************************** * @@ -82,264 +68,165 @@ acpi_psx_execute ( * *****************************************************************************/ +/* + * psxface - Parser external interfaces + */ +acpi_status acpi_ps_execute_method(struct acpi_evaluate_info *info); -/* psargs - Parse AML opcode arguments */ - -u8 * -acpi_ps_get_next_package_end ( - struct acpi_parse_state *parser_state); - -u32 -acpi_ps_get_next_package_length ( - struct acpi_parse_state *parser_state); +/* + * psargs - Parse AML opcode arguments + */ +u8 *acpi_ps_get_next_package_end(struct acpi_parse_state *parser_state); -char * -acpi_ps_get_next_namestring ( - struct acpi_parse_state *parser_state); +char *acpi_ps_get_next_namestring(struct acpi_parse_state *parser_state); void -acpi_ps_get_next_simple_arg ( - struct acpi_parse_state *parser_state, - u32 arg_type, - union acpi_parse_object *arg); +acpi_ps_get_next_simple_arg(struct acpi_parse_state *parser_state, + u32 arg_type, union acpi_parse_object *arg); acpi_status -acpi_ps_get_next_namepath ( - struct acpi_walk_state *walk_state, - struct acpi_parse_state *parser_state, - union acpi_parse_object *arg, - u8 method_call); - -union acpi_parse_object * -acpi_ps_get_next_field ( - struct acpi_parse_state *parser_state); +acpi_ps_get_next_namepath(struct acpi_walk_state *walk_state, + struct acpi_parse_state *parser_state, + union acpi_parse_object *arg, u8 method_call); acpi_status -acpi_ps_get_next_arg ( - struct acpi_walk_state *walk_state, - struct acpi_parse_state *parser_state, - u32 arg_type, - union acpi_parse_object **return_arg); - - -/* psfind */ - -union acpi_parse_object * -acpi_ps_find_name ( - union acpi_parse_object *scope, - u32 name, - u32 opcode); - -union acpi_parse_object* -acpi_ps_get_parent ( - union acpi_parse_object *op); - - -/* psopcode - AML Opcode information */ - -const struct acpi_opcode_info * -acpi_ps_get_opcode_info ( - u16 opcode); - -char * -acpi_ps_get_opcode_name ( - u16 opcode); +acpi_ps_get_next_arg(struct acpi_walk_state *walk_state, + struct acpi_parse_state *parser_state, + u32 arg_type, union acpi_parse_object **return_arg); +/* + * psfind + */ +union acpi_parse_object *acpi_ps_find_name(union acpi_parse_object *scope, + u32 name, u32 opcode); -/* psparse - top level parsing routines */ +union acpi_parse_object *acpi_ps_get_parent(union acpi_parse_object *op); -u32 -acpi_ps_get_opcode_size ( - u32 opcode); +/* + * psopcode - AML Opcode information + */ +const struct acpi_opcode_info *acpi_ps_get_opcode_info(u16 opcode); -void -acpi_ps_complete_this_op ( - struct acpi_walk_state *walk_state, - union acpi_parse_object *op); +char *acpi_ps_get_opcode_name(u16 opcode); -acpi_status -acpi_ps_next_parse_state ( - struct acpi_walk_state *walk_state, - union acpi_parse_object *op, - acpi_status callback_status); +/* + * psparse - top level parsing routines + */ +acpi_status acpi_ps_parse_aml(struct acpi_walk_state *walk_state); -acpi_status -acpi_ps_find_object ( - struct acpi_walk_state *walk_state, - union acpi_parse_object **out_op); +u32 acpi_ps_get_opcode_size(u32 opcode); -void -acpi_ps_delete_parse_tree ( - union acpi_parse_object *root); +u16 acpi_ps_peek_opcode(struct acpi_parse_state *state); acpi_status -acpi_ps_parse_loop ( - struct acpi_walk_state *walk_state); +acpi_ps_complete_this_op(struct acpi_walk_state *walk_state, + union acpi_parse_object *op); acpi_status -acpi_ps_parse_aml ( - struct acpi_walk_state *walk_state); - -acpi_status -acpi_ps_parse_table ( - u8 *aml, - u32 aml_size, - acpi_parse_downwards descending_callback, - acpi_parse_upwards ascending_callback, - union acpi_parse_object **root_object); - -u16 -acpi_ps_peek_opcode ( - struct acpi_parse_state *state); - - -/* psscope - Scope stack management routines */ +acpi_ps_next_parse_state(struct acpi_walk_state *walk_state, + union acpi_parse_object *op, + acpi_status callback_status); +/* + * psloop - main parse loop + */ +acpi_status acpi_ps_parse_loop(struct acpi_walk_state *walk_state); +/* + * psscope - Scope stack management routines + */ acpi_status -acpi_ps_init_scope ( - struct acpi_parse_state *parser_state, - union acpi_parse_object *root); +acpi_ps_init_scope(struct acpi_parse_state *parser_state, + union acpi_parse_object *root); -union acpi_parse_object * -acpi_ps_get_parent_scope ( - struct acpi_parse_state *state); +union acpi_parse_object *acpi_ps_get_parent_scope(struct acpi_parse_state + *state); -u8 -acpi_ps_has_completed_scope ( - struct acpi_parse_state *parser_state); +u8 acpi_ps_has_completed_scope(struct acpi_parse_state *parser_state); void -acpi_ps_pop_scope ( - struct acpi_parse_state *parser_state, - union acpi_parse_object **op, - u32 *arg_list, - u32 *arg_count); +acpi_ps_pop_scope(struct acpi_parse_state *parser_state, + union acpi_parse_object **op, + u32 * arg_list, u32 * arg_count); acpi_status -acpi_ps_push_scope ( - struct acpi_parse_state *parser_state, - union acpi_parse_object *op, - u32 remaining_args, - u32 arg_count); +acpi_ps_push_scope(struct acpi_parse_state *parser_state, + union acpi_parse_object *op, + u32 remaining_args, u32 arg_count); -void -acpi_ps_cleanup_scope ( - struct acpi_parse_state *state); - - -/* pstree - parse tree manipulation routines */ +void acpi_ps_cleanup_scope(struct acpi_parse_state *state); +/* + * pstree - parse tree manipulation routines + */ void -acpi_ps_append_arg( - union acpi_parse_object *op, - union acpi_parse_object *arg); +acpi_ps_append_arg(union acpi_parse_object *op, union acpi_parse_object *arg); -union acpi_parse_object* -acpi_ps_find ( - union acpi_parse_object *scope, - char *path, - u16 opcode, - u32 create); +union acpi_parse_object *acpi_ps_find(union acpi_parse_object *scope, + char *path, u16 opcode, u32 create); -union acpi_parse_object * -acpi_ps_get_arg( - union acpi_parse_object *op, - u32 argn); +union acpi_parse_object *acpi_ps_get_arg(union acpi_parse_object *op, u32 argn); -union acpi_parse_object * -acpi_ps_get_child ( - union acpi_parse_object *op); - -union acpi_parse_object * -acpi_ps_get_depth_next ( - union acpi_parse_object *origin, - union acpi_parse_object *op); - - -/* pswalk - parse tree walk routines */ - -acpi_status -acpi_ps_walk_parsed_aml ( - union acpi_parse_object *start_op, - union acpi_parse_object *end_op, - union acpi_operand_object *mth_desc, - struct acpi_namespace_node *start_node, - union acpi_operand_object **params, - union acpi_operand_object **caller_return_desc, - acpi_owner_id owner_id, - acpi_parse_downwards descending_callback, - acpi_parse_upwards ascending_callback); +#ifdef ACPI_FUTURE_USAGE +union acpi_parse_object *acpi_ps_get_depth_next(union acpi_parse_object *origin, + union acpi_parse_object *op); +#endif /* ACPI_FUTURE_USAGE */ +/* + * pswalk - parse tree walk routines + */ acpi_status -acpi_ps_get_next_walk_op ( - struct acpi_walk_state *walk_state, - union acpi_parse_object *op, - acpi_parse_upwards ascending_callback); +acpi_ps_walk_parsed_aml(union acpi_parse_object *start_op, + union acpi_parse_object *end_op, + union acpi_operand_object *mth_desc, + struct acpi_namespace_node *start_node, + union acpi_operand_object **params, + union acpi_operand_object **caller_return_desc, + acpi_owner_id owner_id, + acpi_parse_downwards descending_callback, + acpi_parse_upwards ascending_callback); acpi_status -acpi_ps_delete_completed_op ( - struct acpi_walk_state *walk_state); +acpi_ps_get_next_walk_op(struct acpi_walk_state *walk_state, + union acpi_parse_object *op, + acpi_parse_upwards ascending_callback); +acpi_status acpi_ps_delete_completed_op(struct acpi_walk_state *walk_state); -/* psutils - parser utilities */ +void acpi_ps_delete_parse_tree(union acpi_parse_object *root); -union acpi_parse_object * -acpi_ps_create_scope_op ( - void); - -void -acpi_ps_init_op ( - union acpi_parse_object *op, - u16 opcode); - -union acpi_parse_object * -acpi_ps_alloc_op ( - u16 opcode); - -void -acpi_ps_free_op ( - union acpi_parse_object *op); +/* + * psutils - parser utilities + */ +union acpi_parse_object *acpi_ps_create_scope_op(void); -void -acpi_ps_delete_parse_cache ( - void); +void acpi_ps_init_op(union acpi_parse_object *op, u16 opcode); -u8 -acpi_ps_is_leading_char ( - u32 c); +union acpi_parse_object *acpi_ps_alloc_op(u16 opcode); -u8 -acpi_ps_is_prefix_char ( - u32 c); +void acpi_ps_free_op(union acpi_parse_object *op); -u32 -acpi_ps_get_name( - union acpi_parse_object *op); +u8 acpi_ps_is_leading_char(u32 c); -void -acpi_ps_set_name( - union acpi_parse_object *op, - u32 name); +u8 acpi_ps_is_prefix_char(u32 c); +#ifdef ACPI_FUTURE_USAGE +u32 acpi_ps_get_name(union acpi_parse_object *op); +#endif /* ACPI_FUTURE_USAGE */ -/* psdump - display parser tree */ +void acpi_ps_set_name(union acpi_parse_object *op, u32 name); +/* + * psdump - display parser tree + */ u32 -acpi_ps_sprint_path ( - char *buffer_start, - u32 buffer_size, - union acpi_parse_object *op); +acpi_ps_sprint_path(char *buffer_start, + u32 buffer_size, union acpi_parse_object *op); u32 -acpi_ps_sprint_op ( - char *buffer_start, - u32 buffer_size, - union acpi_parse_object *op); - -void -acpi_ps_show ( - union acpi_parse_object *op); +acpi_ps_sprint_op(char *buffer_start, + u32 buffer_size, union acpi_parse_object *op); +void acpi_ps_show(union acpi_parse_object *op); -#endif /* __ACPARSER_H__ */ +#endif /* __ACPARSER_H__ */