45#define EXPORT_ACPI_INTERFACES
53#define _COMPONENT ACPI_NAMESPACE
110 FreeBufferOnError =
TRUE;
147 if (ReturnBuffer->Length == 0)
159 if (((
ACPI_OBJECT *) ReturnBuffer->Pointer)->Type == ReturnType)
167 "Incorrect return type from %s - received [%s], requested [%s]",
172 if (FreeBufferOnError)
182 ReturnBuffer->Pointer =
NULL;
185 ReturnBuffer->Length = 0;
225 ACPI_SIZE BufferSpaceNeeded;
243 if (!
Info->PrefixNode)
274 "Both Handle and Pathname are NULL"));
279 "Null Handle with relative pathname [%s]",
Pathname));
292 if (ExternalParams && ExternalParams->
Count)
301 "Excess arguments (%u) - using only %u",
312 ((ACPI_SIZE)
Info->ParamCount + 1) *
sizeof (
void *));
313 if (!
Info->Parameters)
321 for (
i = 0;
i <
Info->ParamCount;
i++)
335#ifdef _FUTURE_FEATURE
347 if (
Info->ObjDesc->Method.ParamCount >
Info->ParamCount)
350 "Insufficient arguments (%u) - %u are required",
352 Info->ObjDesc->Method.ParamCount));
358 else if (
Info->ObjDesc->Method.ParamCount <
Info->ParamCount)
361 "Excess arguments (%u) - only %u are required",
363 Info->ObjDesc->Method.ParamCount));
367 Info->ParamCount =
Info->ObjDesc->Method.ParamCount;
374 if (
Info->ParamCount)
381 ((ACPI_SIZE)
Info->ParamCount + 1) *
sizeof (
void *));
382 if (!
Info->Parameters)
390 for (
i = 0;
i <
Info->ParamCount;
i++)
408 if (
Info->ParamCount)
411 "%u arguments were passed to a non-method ACPI object",
430 goto CleanupReturnObject;
433 if (!
Info->ReturnObject)
457 goto CleanupReturnObject;
481 "Needed buffer size %X, %s\n",
482 (
UINT32) BufferSpaceNeeded,
490 Info->ReturnObject, ReturnBuffer);
496 if (
Info->ReturnObject)
515 if (
Info->Parameters)
572 switch (
Info->ReturnObject->Reference.Class)
576 ObjDesc = *(
Info->ReturnObject->Reference.Where);
581 Node =
Info->ReturnObject->Reference.Object;
584 ObjDesc =
Node->Object;
599 Info->ReturnObject = ObjDesc;
854 Status =
Info->UserFunction (ObjHandle, NestingLevel,
int strcmp(const char *String1, const char *String2)
UINT32 void void ** ReturnValue
#define AE_MISSING_ARGUMENTS
#define ACPI_MTX_NAMESPACE
#define ACPI_GET_DESCRIPTOR_TYPE(d)
#define ACPI_IS_ROOT_PREFIX(c)
#define ACPI_WARN_PREDEFINED(plist)
ACPI_STATUS AcpiNsGetAttachedData(ACPI_NAMESPACE_NODE *Node, ACPI_OBJECT_HANDLER Handler, void **Data)
#define ACPI_NS_WALK_UNLOCK
ACPI_NAMESPACE_NODE * AcpiNsValidateHandle(ACPI_HANDLE Handle)
ACPI_OBJECT_TYPE AcpiNsGetType(ACPI_NAMESPACE_NODE *Node)
char * AcpiNsGetExternalPathname(ACPI_NAMESPACE_NODE *Node)
ACPI_STATUS AcpiNsDetachData(ACPI_NAMESPACE_NODE *Node, ACPI_OBJECT_HANDLER Handler)
ACPI_STATUS AcpiNsAttachData(ACPI_NAMESPACE_NODE *Node, ACPI_OBJECT_HANDLER Handler, void *Data)
ACPI_STATUS AcpiNsWalkNamespace(ACPI_OBJECT_TYPE Type, ACPI_HANDLE StartObject, UINT32 MaxDepth, UINT32 Flags, ACPI_WALK_CALLBACK DescendingCallback, ACPI_WALK_CALLBACK AscendingCallback, void *Context, void **ReturnValue)
ACPI_STATUS AcpiNsEvaluate(ACPI_EVALUATE_INFO *Info)
#define ACPI_DESC_TYPE_NAMED
#define ACPI_DEBUG_PRINT(pl)
#define ACPI_MODULE_NAME(Name)
#define ACPI_WARNING(plist)
#define return_ACPI_STATUS(s)
#define ACPI_FUNCTION_TRACE(a)
#define ACPI_ERROR(plist)
void AcpiOsFree(void *Memory)
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK DescendingCallback
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE StartObject
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK UserFunction
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING Pathname
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK AscendingCallback
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER Handler
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 MaxDepth
#define ACPI_TYPE_LOCAL_REFERENCE
void(* ACPI_OBJECT_HANDLER)(ACPI_HANDLE Object, void *Data)
#define ACPI_ALLOCATE_BUFFER
#define ACPI_EXPORT_SYMBOL(Symbol)
ACPI_STATUS(* ACPI_WALK_CALLBACK)(ACPI_HANDLE Object, UINT32 NestingLevel, void *Context, void **ReturnValue)
#define ACPI_ALLOCATE_ZEROED(a)
#define ACPI_STA_DEVICE_PRESENT
#define ACPI_STA_DEVICE_FUNCTIONING
#define ACPI_TYPE_LOCAL_MAX
const char * AcpiUtGetTypeName(ACPI_OBJECT_TYPE Type)
ACPI_STATUS AcpiUtInitializeBuffer(ACPI_BUFFER *Buffer, ACPI_SIZE RequiredLength)
ACPI_STATUS AcpiUtCopyIobjectToEobject(ACPI_OPERAND_OBJECT *Obj, ACPI_BUFFER *RetBuffer)
ACPI_STATUS AcpiUtAcquireMutex(ACPI_MUTEX_HANDLE MutexId)
ACPI_STATUS AcpiUtReleaseMutex(ACPI_MUTEX_HANDLE MutexId)
void AcpiUtDeleteInternalObjectList(ACPI_OPERAND_OBJECT **ObjList)
void AcpiUtRemoveReference(ACPI_OPERAND_OBJECT *Object)
ACPI_STATUS AcpiUtExecute_CID(ACPI_NAMESPACE_NODE *DeviceNode, ACPI_PNP_DEVICE_ID_LIST **ReturnCidList)
ACPI_STATUS AcpiUtExecute_HID(ACPI_NAMESPACE_NODE *DeviceNode, ACPI_PNP_DEVICE_ID **ReturnId)
ACPI_STATUS AcpiUtCopyEobjectToIobject(ACPI_OBJECT *Obj, ACPI_OPERAND_OBJECT **InternalObj)
ACPI_STATUS AcpiUtExecute_STA(ACPI_NAMESPACE_NODE *DeviceNode, UINT32 *StatusFlags)
void AcpiUtAddReference(ACPI_OPERAND_OBJECT *Object)
ACPI_STATUS AcpiUtAcquireReadLock(ACPI_RW_LOCK *Lock)
ACPI_STATUS AcpiUtGetObjectSize(ACPI_OPERAND_OBJECT *Obj, ACPI_SIZE *ObjLength)
ACPI_STATUS AcpiUtReleaseReadLock(ACPI_RW_LOCK *Lock)
static const WCHAR Cleanup[]
#define ACPI_METHOD_NUM_ARGS
void AcpiExExitInterpreter(void)
void AcpiExEnterInterpreter(void)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
_In_ HANDLE _In_opt_ HANDLE _Out_opt_ PHANDLE TargetHandle
ACPI_STATUS AcpiWalkNamespace(ACPI_OBJECT_TYPE Type, ACPI_HANDLE StartObject, UINT32 MaxDepth, ACPI_WALK_CALLBACK DescendingCallback, ACPI_WALK_CALLBACK AscendingCallback, void *Context, void **ReturnValue)
ACPI_STATUS AcpiGetDevices(char *HID, ACPI_WALK_CALLBACK UserFunction, void *Context, void **ReturnValue)
ACPI_STATUS AcpiDetachData(ACPI_HANDLE ObjHandle, ACPI_OBJECT_HANDLER Handler)
ACPI_STATUS AcpiAttachData(ACPI_HANDLE ObjHandle, ACPI_OBJECT_HANDLER Handler, void *Data)
ACPI_STATUS AcpiGetData(ACPI_HANDLE ObjHandle, ACPI_OBJECT_HANDLER Handler, void **Data)
static ACPI_STATUS AcpiNsGetDeviceCallback(ACPI_HANDLE ObjHandle, UINT32 NestingLevel, void *Context, void **ReturnValue)
ACPI_STATUS AcpiEvaluateObjectTyped(ACPI_HANDLE Handle, ACPI_STRING Pathname, ACPI_OBJECT_LIST *ExternalParams, ACPI_BUFFER *ReturnBuffer, ACPI_OBJECT_TYPE ReturnType)
ACPI_STATUS AcpiEvaluateObject(ACPI_HANDLE Handle, ACPI_STRING Pathname, ACPI_OBJECT_LIST *ExternalParams, ACPI_BUFFER *ReturnBuffer)
static void AcpiNsResolveReferences(ACPI_EVALUATE_INFO *Info)
ACPI_STATUS AcpiGetHandle(ACPI_HANDLE Parent, ACPI_STRING Pathname, ACPI_HANDLE *RetHandle)
const char * AcpiFormatException(ACPI_STATUS Status)
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
_Must_inspect_result_ _In_ ULONG Flags
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList