// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 /****************************************************************************** * * Module Name: dsobject - Dispatcher object management routines * * Copyright (C) 2000 - 2023, Intel Corp. * *****************************************************************************/ #include <acpi/acpi.h> #include "accommon.h" #include "acparser.h" #include "amlcode.h" #include "acdispat.h" #include "acnamesp.h" #include "acinterp.h" #define _COMPONENT … ACPI_MODULE_NAME("dsobject") /******************************************************************************* * * FUNCTION: acpi_ds_build_internal_object * * PARAMETERS: walk_state - Current walk state * op - Parser object to be translated * obj_desc_ptr - Where the ACPI internal object is returned * * RETURN: Status * * DESCRIPTION: Translate a parser Op object to the equivalent namespace object * Simple objects are any objects other than a package object! * ******************************************************************************/ acpi_status acpi_ds_build_internal_object(struct acpi_walk_state *walk_state, union acpi_parse_object *op, union acpi_operand_object **obj_desc_ptr) { … } /******************************************************************************* * * FUNCTION: acpi_ds_build_internal_buffer_obj * * PARAMETERS: walk_state - Current walk state * op - Parser object to be translated * buffer_length - Length of the buffer * obj_desc_ptr - Where the ACPI internal object is returned * * RETURN: Status * * DESCRIPTION: Translate a parser Op package object to the equivalent * namespace object * ******************************************************************************/ acpi_status acpi_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) { … } /******************************************************************************* * * FUNCTION: acpi_ds_create_node * * PARAMETERS: walk_state - Current walk state * node - NS Node to be initialized * op - Parser object to be translated * * RETURN: Status * * DESCRIPTION: Create the object to be associated with a namespace node * ******************************************************************************/ acpi_status acpi_ds_create_node(struct acpi_walk_state *walk_state, struct acpi_namespace_node *node, union acpi_parse_object *op) { … } /******************************************************************************* * * FUNCTION: acpi_ds_init_object_from_op * * PARAMETERS: walk_state - Current walk state * op - Parser op used to init the internal object * opcode - AML opcode associated with the object * ret_obj_desc - Namespace object to be initialized * * RETURN: Status * * DESCRIPTION: Initialize a namespace object from a parser Op and its * associated arguments. The namespace object is a more compact * representation of the Op and its arguments. * ******************************************************************************/ acpi_status acpi_ds_init_object_from_op(struct acpi_walk_state *walk_state, union acpi_parse_object *op, u16 opcode, union acpi_operand_object **ret_obj_desc) { … }