Lines Matching +full:reference +full:- +full:buffer
3 * Module Name: exresop - AML Interpreter operand/object resolution
11 * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
28 * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
104 * re-exports any such software from a foreign destination, Licensee shall
105 * ensure that the distribution and export/re-export of the software is in
108 * any of its subsidiaries will export/re-export any technical data, process,
130 * 3. Neither the names of the above-listed copyright holders nor the names
205 * Allow the AML "Constant" opcodes (Zero, One, etc.) to be reference in AcpiExCheckObjectType()
210 (((ACPI_OPERAND_OBJECT *) Object)->Common.Flags & in AcpiExCheckObjectType()
235 * PARAMETERS: Opcode - Opcode being interpreted
236 * StackPtr - Pointer to the operand stack to be
238 * WalkState - Current state
245 * Each 5-bit group in ArgTypes represents one required
272 if (OpInfo->Class == AML_CLASS_UNKNOWN) in AcpiExResolveOperands()
277 ArgTypes = OpInfo->RuntimeArgs; in AcpiExResolveOperands()
288 Opcode, OpInfo->Name, ArgTypes)); in AcpiExResolveOperands()
319 ObjectType = ((ACPI_NAMESPACE_NODE *) ObjDesc)->Type; in AcpiExResolveOperands()
331 ObjectType = ((ACPI_NAMESPACE_NODE *) ObjDesc)->Type; in AcpiExResolveOperands()
339 ObjectType = ObjDesc->Common.Type; in AcpiExResolveOperands()
353 /* Validate the Reference */ in AcpiExResolveOperands()
355 switch (ObjDesc->Reference.Class) in AcpiExResolveOperands()
368 case ACPI_REFCLASS_NAME: /* Reference to a named object */ in AcpiExResolveOperands()
371 "Operand is a Reference, Class [%s] %2.2X\n", in AcpiExResolveOperands()
373 ObjDesc->Reference.Class)); in AcpiExResolveOperands()
379 "Unknown Reference Class 0x%2.2X in %p", in AcpiExResolveOperands()
380 ObjDesc->Reference.Class, ObjDesc)); in AcpiExResolveOperands()
408 case ARGI_REF_OR_STRING: /* Can be a String or Reference */ in AcpiExResolveOperands()
412 (ObjDesc->Common.Type == ACPI_TYPE_STRING)) in AcpiExResolveOperands()
415 * String found - the string references a named object and in AcpiExResolveOperands()
422 * Else not a string - fall through to the normal Reference in AcpiExResolveOperands()
433 case ARGI_SIMPLE_TARGET: /* Name, Local, or Arg - no implicit conversion */ in AcpiExResolveOperands()
438 * A Namespace Node is OK as-is in AcpiExResolveOperands()
455 * We don't want to resolve IndexOp reference objects during in AcpiExResolveOperands()
457 * Instead, we just want to store the reference object. in AcpiExResolveOperands()
458 * -- All others must be resolved below. in AcpiExResolveOperands()
461 ((*StackPtr)->Common.Type == ACPI_TYPE_LOCAL_REFERENCE) && in AcpiExResolveOperands()
462 ((*StackPtr)->Reference.Class == ACPI_REFCLASS_INDEX)) in AcpiExResolveOperands()
540 * implicitly convert from a STRING or BUFFER. in AcpiExResolveOperands()
551 "Needed [Integer/String/Buffer], found [%s] %p", in AcpiExResolveOperands()
570 * Aka - "Implicit Source Operand Conversion" in AcpiExResolveOperands()
578 "Needed [Integer/String/Buffer], found [%s] %p", in AcpiExResolveOperands()
596 * But we can implicitly convert from a BUFFER or INTEGER in AcpiExResolveOperands()
597 * Aka - "Implicit Source Operand Conversion" in AcpiExResolveOperands()
606 "Needed [Integer/String/Buffer], found [%s] %p", in AcpiExResolveOperands()
623 /* Need an operand of type INTEGER, STRING or BUFFER */ in AcpiExResolveOperands()
625 switch (ObjDesc->Common.Type) in AcpiExResolveOperands()
636 "Needed [Integer/String/Buffer], found [%s] %p", in AcpiExResolveOperands()
645 /* Need an operand of type STRING or BUFFER */ in AcpiExResolveOperands()
647 switch (ObjDesc->Common.Type) in AcpiExResolveOperands()
657 /* Highest priority conversion is to type Buffer */ in AcpiExResolveOperands()
673 "Needed [Integer/String/Buffer], found [%s] %p", in AcpiExResolveOperands()
683 * Need a buffer, string, package, or RefOf reference. in AcpiExResolveOperands()
685 * The only reference allowed here is a direct reference to in AcpiExResolveOperands()
688 switch (ObjDesc->Common.Type) in AcpiExResolveOperands()
701 "Needed [Buffer/String/Package/Reference], found [%s] %p", in AcpiExResolveOperands()
710 /* Need a buffer or package or (ACPI 2.0) String */ in AcpiExResolveOperands()
712 switch (ObjDesc->Common.Type) in AcpiExResolveOperands()
724 "Needed [Buffer/String/Package], found [%s] %p", in AcpiExResolveOperands()
734 * Need an operand of type REGION or a BUFFER in AcpiExResolveOperands()
737 switch (ObjDesc->Common.Type) in AcpiExResolveOperands()
748 "Needed [Region/Buffer], found [%s] %p", in AcpiExResolveOperands()
759 switch (ObjDesc->Common.Type) in AcpiExResolveOperands()
795 "Needed Integer/Buffer/String/Package/Ref/Ddb]" in AcpiExResolveOperands()
808 "Internal - Unknown ARGI (required operand) type 0x%X", in AcpiExResolveOperands()
819 TypeNeeded, (*StackPtr)->Common.Type, *StackPtr); in AcpiExResolveOperands()
832 StackPtr--; in AcpiExResolveOperands()
836 ACPI_DUMP_OPERANDS (WalkState->Operands, in AcpiExResolveOperands()
837 AcpiPsGetOpcodeName (Opcode), WalkState->NumOperands); in AcpiExResolveOperands()