// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 /****************************************************************************** * * Module Name: exoparg6 - AML execution - opcodes with 6 arguments * * Copyright (C) 2000 - 2023, Intel Corp. * *****************************************************************************/ #include <acpi/acpi.h> #include "accommon.h" #include "acinterp.h" #include "acparser.h" #include "amlcode.h" #define _COMPONENT … ACPI_MODULE_NAME("exoparg6") /*! * Naming convention for AML interpreter execution routines. * * The routines that begin execution of AML opcodes are named with a common * convention based upon the number of arguments, the number of target operands, * and whether or not a value is returned: * * AcpiExOpcode_xA_yT_zR * * Where: * * xA - ARGUMENTS: The number of arguments (input operands) that are * required for this opcode type (1 through 6 args). * yT - TARGETS: The number of targets (output operands) that are required * for this opcode type (0, 1, or 2 targets). * zR - RETURN VALUE: Indicates whether this opcode type returns a value * as the function return (0 or 1). * * The AcpiExOpcode* functions are called via the Dispatcher component with * fully resolved operands. !*/ /* Local prototypes */ static u8 acpi_ex_do_match(u32 match_op, union acpi_operand_object *package_obj, union acpi_operand_object *match_obj); /******************************************************************************* * * FUNCTION: acpi_ex_do_match * * PARAMETERS: match_op - The AML match operand * package_obj - Object from the target package * match_obj - Object to be matched * * RETURN: TRUE if the match is successful, FALSE otherwise * * DESCRIPTION: Implements the low-level match for the ASL Match operator. * Package elements will be implicitly converted to the type of * the match object (Integer/Buffer/String). * ******************************************************************************/ static u8 acpi_ex_do_match(u32 match_op, union acpi_operand_object *package_obj, union acpi_operand_object *match_obj) { … } /******************************************************************************* * * FUNCTION: acpi_ex_opcode_6A_0T_1R * * PARAMETERS: walk_state - Current walk state * * RETURN: Status * * DESCRIPTION: Execute opcode with 6 arguments, no target, and a return value * ******************************************************************************/ acpi_status acpi_ex_opcode_6A_0T_1R(struct acpi_walk_state *walk_state) { … }