^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /******************************************************************************
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * Module Name: acapps - common include for ACPI applications/tools
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Copyright (C) 2000 - 2020, Intel Corp.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) *****************************************************************************/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #ifndef _ACCONVERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define _ACCONVERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) /* Definitions for comment state */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #define ASL_COMMENT_STANDARD 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #define ASLCOMMENT_INLINE 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) #define ASL_COMMENT_OPEN_PAREN 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) #define ASL_COMMENT_CLOSE_PAREN 4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #define ASL_COMMENT_CLOSE_BRACE 5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) /* Definitions for comment print function*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) #define AML_COMMENT_STANDARD 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #define AMLCOMMENT_INLINE 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) #define AML_COMMENT_END_NODE 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) #define AML_NAMECOMMENT 4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) #define AML_COMMENT_CLOSE_BRACE 5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #define AML_COMMENT_ENDBLK 6
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) #define AML_COMMENT_INCLUDE 7
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) #ifdef ACPI_ASL_COMPILER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) * cvcompiler
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) void
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) cv_process_comment(struct asl_comment_state current_state,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) char *string_buffer, int c1);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) void
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) cv_process_comment_type2(struct asl_comment_state current_state,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) char *string_buffer);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) u32 cv_calculate_comment_lengths(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) void cv_process_comment_state(char input);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) char *cv_append_inline_comment(char *inline_comment, char *to_add);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) void cv_add_to_comment_list(char *to_add);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) void cv_place_comment(u8 type, char *comment_string);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) u32 cv_parse_op_block_type(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) struct acpi_comment_node *cv_comment_node_calloc(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) void cg_write_aml_def_block_comment(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) void
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) cg_write_one_aml_comment(union acpi_parse_object *op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) char *comment_to_print, u8 input_option);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) void cg_write_aml_comment(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) * cvparser
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) void cv_init_file_tree(struct acpi_table_header *table, FILE * root_file);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) void cv_clear_op_comments(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) struct acpi_file_node *cv_filename_exists(char *filename,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) struct acpi_file_node *head);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) void cv_label_file_node(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) void
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) cv_capture_list_comments(struct acpi_parse_state *parser_state,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) struct acpi_comment_node *list_head,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) struct acpi_comment_node *list_tail);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) void cv_capture_comments_only(struct acpi_parse_state *parser_state);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) void cv_capture_comments(struct acpi_walk_state *walk_state);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) void cv_transfer_comments(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) * cvdisasm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) void cv_switch_files(u32 level, union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) u8 cv_file_has_switched(union acpi_parse_object *op);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) void cv_close_paren_write_comment(union acpi_parse_object *op, u32 level);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) void cv_close_brace_write_comment(union acpi_parse_object *op, u32 level);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) void
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) cv_print_one_comment_list(struct acpi_comment_node *comment_list, u32 level);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) void
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) cv_print_one_comment_type(union acpi_parse_object *op,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) u8 comment_type, char *end_str, u32 level);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) #endif /* _ACCONVERT */