diff options
Diffstat (limited to 'loader/memory_efi.c')
| -rw-r--r-- | loader/memory_efi.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/loader/memory_efi.c b/loader/memory_efi.c new file mode 100644 index 0000000..3dae44f --- /dev/null +++ b/loader/memory_efi.c @@ -0,0 +1,30 @@ +#include "loader_efi.h" + +void *efi_allocate(size_t size) +{ + EFI_STATUS status; + void *buffer; + + status = e_bs->AllocatePool(EfiLoaderData, size, &buffer); + + if (EFI_ERROR(status)) + { + e_last_error = status; + buffer = NULL; + } + + return buffer; +} + +void efi_free(void *buffer) +{ + EFI_STATUS status; + + status = e_bs->FreePool(buffer); + + if (EFI_ERROR(status)) + { + e_last_error = status; + } +} + |
