25 IN UINT8 *CurrentBuffer,
36 while ((
UINTN)CurrentBuffer < (
UINTN)(AmlParentHandle->Buffer + AmlParentHandle->Size)) {
38 if (AmlByteEncoding ==
NULL) {
39 return EFI_INVALID_PARAMETER;
46 *Buffer = CurrentBuffer;
53 (
UINTN)AmlParentHandle->Buffer + AmlParentHandle->Size - (
UINTN)CurrentBuffer
56 return EFI_INVALID_PARAMETER;
59 CurrentBuffer += DataSize;
89 if (AmlHandle ==
NULL) {
93 CurrentBuffer = (VOID *)AmlParentHandle->Buffer;
95 CurrentBuffer = (VOID *)(AmlHandle->Buffer + AmlHandle->Size);
119 EFI_ACPI_DATA_TYPE DataType;
122 AML_OP_PARSE_INDEX Index;
124 AML_OP_PARSE_INDEX MaxTerm;
126 Index = AML_OP_PARSE_INDEX_GET_TERM1;
127 MaxTerm = AmlParentHandle->AmlByteEncoding->MaxIndex;
128 while (Index <= MaxTerm) {
131 (AML_OP_PARSE_INDEX)Index,
136 if (EFI_ERROR (Status)) {
137 return EFI_INVALID_PARAMETER;
140 if (DataType == EFI_ACPI_DATA_TYPE_NONE) {
150 if ((DataType == EFI_ACPI_DATA_TYPE_CHILD) &&
189 UINT8 *CurrentBuffer;
191 CurrentBuffer =
NULL;
210 if (EFI_ERROR (Status)) {
211 return EFI_INVALID_PARAMETER;
217 if ((
UINTN)AmlHandle->Buffer < (
UINTN)CurrentBuffer) {
221 }
else if ((
UINTN)AmlHandle->Buffer + AmlHandle->Size < (
UINTN)AmlParentHandle->Buffer + AmlParentHandle->Size) {
225 CurrentBuffer = AmlHandle->Buffer + AmlHandle->Size;
257 if (AmlHandle ==
NULL) {
261 AmlHandle = AmlParentHandle;
268 if (EFI_ERROR (Status)) {
269 return EFI_INVALID_PARAMETER;
272 if (*Buffer !=
NULL) {
UINTN AmlGetObjectSize(IN AML_BYTE_ENCODING *AmlByteEncoding, IN UINT8 *Buffer, IN UINTN MaxBufferSize)
EFI_STATUS AmlParseOptionHandleCommon(IN EFI_AML_HANDLE *AmlHandle, IN AML_OP_PARSE_INDEX Index, OUT EFI_ACPI_DATA_TYPE *DataType, OUT VOID **Data, OUT UINTN *DataSize)
AML_BYTE_ENCODING * AmlSearchByOpByte(IN UINT8 *OpByteBuffer)
EFI_STATUS AmlGetOffsetAfterLastOption(IN EFI_AML_HANDLE *AmlHandle, OUT UINT8 **Buffer)
#define AML_HAS_CHILD_OBJ
EFI_STATUS AmlGetChildFromObjectChildList(IN EFI_AML_HANDLE *AmlParentHandle, IN EFI_AML_HANDLE *AmlHandle, OUT VOID **Buffer)
EFI_STATUS AmlGetChildFromRoot(IN EFI_AML_HANDLE *AmlParentHandle, IN EFI_AML_HANDLE *AmlHandle, OUT VOID **Buffer)
EFI_STATUS AmlGetChildFromOptionList(IN EFI_AML_HANDLE *AmlParentHandle, IN EFI_AML_HANDLE *AmlHandle, OUT VOID **Buffer)
EFI_STATUS AmlGetChildFromObjectBuffer(IN EFI_AML_HANDLE *AmlParentHandle, IN UINT8 *CurrentBuffer, OUT VOID **Buffer)
EFI_STATUS AmlGetChildFromNonRoot(IN EFI_AML_HANDLE *AmlParentHandle, IN EFI_AML_HANDLE *AmlHandle, OUT VOID **Buffer)
AML_OP_ATTRIBUTE Attribute
Additional information on the AML object.