49#define _COMPONENT ACPI_NAMESPACE
128#define ACPI_SORT_ASCENDING 0
129#define ACPI_SORT_DESCENDING 1
141 UINT8 SortDirection);
182#define ACPI_FDE_FIELD_COUNT 5
183#define ACPI_FDE_BYTE_BUFFER_SIZE 5
184#define ACPI_FDE_DWORD_BUFFER_SIZE (ACPI_FDE_FIELD_COUNT * (UINT32) sizeof (UINT32))
330 switch (ReturnObject->
Common.Type)
346 Info->FullPathname,
Info->NodeFlags,
347 "Incorrect return buffer length %u, expected %u",
364 ByteBuffer = ReturnObject->
Buffer.Pointer;
366 BufferObject->
Buffer.Pointer);
370 *DwordBuffer = (
UINT32) *ByteBuffer;
376 "%s Expanded Byte Buffer to expected DWord Buffer\n",
377 Info->FullPathname));
388 *ReturnObjectPtr = BufferObject;
445 OriginalElement = *ElementPtr;
446 OriginalRefCount = OriginalElement->
Common.ReferenceCount;
454 if (OriginalElement != *ElementPtr)
458 (*ElementPtr)->Common.ReferenceCount =
516 while (
i < OuterElementCount)
521 if ((*OuterElements)->Package.Count == 0)
524 Info->FullPathname,
Info->NodeFlags,
525 "SubPackage[%u] - removing entry due to zero count",
i));
534 Info->FullPathname,
Info->NodeFlags,
535 "SubPackage[%u] - removing entry due to invalid Type(0)",
i));
607 if (ReturnObject->
String.Length == 0)
610 Info->FullPathname,
Info->NodeFlags,
611 "Invalid zero-length _HID or _CID string"));
637 NewString->
String.Length--;
640 "%s: Removed invalid leading asterisk\n",
Info->FullPathname));
657 *ReturnObjectPtr = NewString;
700 SubPackage = *TopObjectList;
716 ObjDesc = SubObjectList[3];
719 SubObjectList[3] = SubObjectList[2];
720 SubObjectList[2] = ObjDesc;
724 Info->FullPathname,
Info->NodeFlags,
725 "PRT[%X]: Fixed reversed SourceName and SourceIndex",
787 for (
i = 0;
i < OuterElementCount;
i++)
790 ObjDesc = Elements[1];
795 Info->FullPathname,
Info->NodeFlags,
796 "SubPackage[%u,%u] - suspicious power dissipation values",
909 if (!OuterElementCount || StartIndex >= OuterElementCount)
915 OuterElementCount -= StartIndex;
925 for (
i = 0;
i < OuterElementCount;
i++)
936 if ((*OuterElements)->Package.Count < ExpectedCount)
942 ObjDesc = Elements[SortIndex];
959 OuterElementCount, SortIndex, SortDirection);
964 "%s: Repaired unsorted list - now sorted by %s\n",
965 Info->FullPathname, SortKeyName));
1000 UINT8 SortDirection)
1024 TempObj = Elements[
j-1];
1025 Elements[
j-1] = Elements[
j];
1026 Elements[
j] = TempObj;
1062 NewCount =
Count - 1;
#define AE_AML_PACKAGE_LIMIT
#define AE_AML_OPERAND_TYPE
#define ACPI_WARN_PREDEFINED(plist)
ACPI_STATUS AcpiNsGetNode(ACPI_NAMESPACE_NODE *PrefixNode, const char *ExternalPathname, UINT32 Flags, ACPI_NAMESPACE_NODE **OutNode)
#define ACPI_NS_NO_UPSEARCH
#define ACPI_DEBUG_PRINT(pl)
#define ACPI_MODULE_NAME(Name)
#define return_ACPI_STATUS(s)
#define ACPI_FUNCTION_TRACE(a)
#define ACPI_FUNCTION_NAME(a)
#define ACPI_OBJECT_REPAIRED
#define ACPI_COMPARE_NAMESEG(a, b)
#define ACPI_TYPE_INTEGER
#define ACPI_CAST_PTR(t, p)
#define ACPI_TYPE_PACKAGE
#define ACPI_NAMESEG_SIZE
void AcpiUtRemoveReference(ACPI_OPERAND_OBJECT *Object)
ACPI_OPERAND_OBJECT * AcpiUtCreateStringObject(ACPI_SIZE StringSize)
ACPI_OPERAND_OBJECT * AcpiUtCreateBufferObject(ACPI_SIZE BufferSize)
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
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 GLint GLint j
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
static ACPI_STATUS AcpiNsRepair_TSS(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
static ACPI_STATUS AcpiNsCheckSortedList(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT *ReturnObject, UINT32 StartIndex, UINT32 ExpectedCount, UINT32 SortIndex, UINT8 SortDirection, char *SortKeyName)
static ACPI_STATUS AcpiNsRepair_PRT(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
static ACPI_STATUS AcpiNsRepair_FDE(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
ACPI_STATUS AcpiNsComplexRepairs(ACPI_EVALUATE_INFO *Info, ACPI_NAMESPACE_NODE *Node, ACPI_STATUS ValidateStatus, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
static ACPI_STATUS AcpiNsRepair_ALR(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
static void AcpiNsRemoveElement(ACPI_OPERAND_OBJECT *ObjDesc, UINT32 Index)
static const ACPI_REPAIR_INFO AcpiNsRepairableNames[]
static ACPI_STATUS AcpiNsRepair_PSS(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
#define ACPI_SORT_DESCENDING
ACPI_STATUS(* ACPI_REPAIR_FUNCTION)(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
#define ACPI_FDE_DWORD_BUFFER_SIZE
#define ACPI_SORT_ASCENDING
static ACPI_STATUS AcpiNsRepair_CID(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
static const ACPI_REPAIR_INFO * AcpiNsMatchComplexRepair(ACPI_NAMESPACE_NODE *Node)
static ACPI_STATUS AcpiNsRepair_HID(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
struct acpi_repair_info ACPI_REPAIR_INFO
static void AcpiNsSortList(ACPI_OPERAND_OBJECT **Elements, UINT32 Count, UINT32 Index, UINT8 SortDirection)
static ACPI_STATUS AcpiNsRepair_CST(ACPI_EVALUATE_INFO *Info, ACPI_OPERAND_OBJECT **ReturnObjectPtr)
#define ACPI_FDE_FIELD_COUNT
#define ACPI_FDE_BYTE_BUFFER_SIZE
union acpi_operand_object ** Elements
ACPI_REPAIR_FUNCTION RepairFunction
char Name[ACPI_NAMESEG_SIZE]
ACPI_OBJECT_INTEGER Integer
ACPI_OBJECT_COMMON Common
ACPI_OBJECT_PACKAGE Package
ACPI_OBJECT_STRING String
ACPI_OBJECT_BUFFER Buffer
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
_In_ WDFCOLLECTION _In_ ULONG Index