Home | History | Annotate | Download | only in AcpiPlatformDxe

Lines Matching full:blob

34                                         // blob. This is the ordering / search

36 UINTN Size; // The number of bytes in this blob.
37 UINT8 *Base; // Pointer to the blob data.
38 BOOLEAN HostsOnlyTableData; // TRUE iff the blob has been found to
41 } BLOB;
66 CONST BLOB *Blob;
68 Blob = UserStruct;
69 return AsciiStrCmp (StandaloneKey, (CONST CHAR8 *)Blob->File);
94 CONST BLOB *Blob1;
106 @param[in,out] Tracker The ORDERED_COLLECTION tracking the BLOB user
110 allocated for the blob contents, and the
111 contents have been saved. A BLOB object (user
113 referencing the blob contents. The BLOB user
141 BLOB *Blob;
169 Blob = AllocatePool (sizeof *Blob);
170 if (Blob == NULL) {
174 CopyMem (Blob->File, Allocate->File, QEMU_LOADER_FNAME_SIZE);
175 Blob->Size = FwCfgSize;
176 Blob->Base = (VOID *)(UINTN)Address;
177 Blob->HostsOnlyTableData = TRUE;
179 Status = OrderedCollectionInsert (Tracker, NULL, Blob);
190 QemuFwCfgReadBytes (FwCfgSize, Blob->Base);
191 ZeroMem (Blob->Base + Blob->Size, EFI_PAGES_TO_SIZE (NumPages) - Blob->Size);
195 Allocate->Zone, (UINT64)Blob->Size, (UINT64)(UINTN)Blob->Base));
199 FreePool (Blob);
213 @param[in] Tracker The ORDERED_COLLECTION tracking the BLOB user
223 @retval EFI_SUCCESS The pointer field inside the pointer blob has
235 BLOB *Blob, *Blob2;
248 DEBUG ((EFI_D_ERROR, "%a: invalid blob reference(s) \"%a\" / \"%a\"\n",
253 Blob = OrderedCollectionUserStruct (TrackerEntry);
257 Blob->Size < AddPointer->PointerSize ||
258 Blob->Size - AddPointer->PointerSize < AddPointer->PointerOffset) {
264 PointerField = Blob->Base + AddPointer->PointerOffset;
302 @param[in] Tracker The ORDERED_COLLECTION tracking the BLOB user
321 BLOB *Blob;
330 DEBUG ((EFI_D_ERROR, "%a: invalid blob reference \"%a\"\n", __FUNCTION__,
335 Blob = OrderedCollectionUserStruct (TrackerEntry);
336 if (Blob->Size <= AddChecksum->ResultOffset ||
337 Blob->Size < AddChecksum->Length ||
338 Blob->Size - AddChecksum->Length < AddChecksum->Start) {
344 Blob->Base[AddChecksum->ResultOffset] = CalculateCheckSum8 (
345 Blob->Base + AddChecksum->Start,
370 @param[in] Tracker The ORDERED_COLLECTION tracking the BLOB user
402 blob pointed-into by AddPointer has been
422 CONST BLOB *Blob;
423 BLOB *Blob2;
438 Blob = OrderedCollectionUserStruct (TrackerEntry);
440 PointerField = Blob->Base + AddPointer->PointerOffset;
487 // - Length field consistent with both ACPI and containing blob size
507 DEBUG ((EFI_D_VERBOSE, "not found; marking fw_cfg blob as opaque\n"));
659 // Tear down the tracker infrastructure. Each fw_cfg blob will be left in
660 // place only if we're exiting with success and the blob hosts data that is
666 BLOB *Blob;
670 Blob = UserStruct;
672 if (EFI_ERROR (Status) || Blob->HostsOnlyTableData) {
674 Blob->File));
675 gBS->FreePages ((UINTN)Blob->Base, EFI_SIZE_TO_PAGES (Blob->Size));
677 FreePool (Blob);