Add basic volume support to XTLDR protocol
This commit is contained in:
parent
3025338e71
commit
a261c68808
@ -31,6 +31,7 @@
|
||||
/* Loader protocol routine pointers */
|
||||
typedef EFI_STATUS (*PBL_ALLOCATE_PAGES)(IN UINT64 Size, OUT PEFI_PHYSICAL_ADDRESS Memory);
|
||||
typedef EFI_STATUS (*PBL_ALLOCATE_POOL)(IN UINT_PTR Size, OUT PVOID *Memory);
|
||||
typedef EFI_STATUS (*PBL_CLOSE_VOLUME)(IN PEFI_HANDLE VolumeHandle);
|
||||
typedef VOID (*PBL_CONSOLE_CLEAR_SCREEN)();
|
||||
typedef VOID (*PBL_CONSOLE_DISABLE_CURSOR)();
|
||||
typedef VOID (*PBL_CONSOLE_ENABLE_CURSOR)();
|
||||
@ -39,6 +40,7 @@ typedef VOID (*PBL_DEBUG_PRINT)(IN PUINT16 Format, IN ...);
|
||||
typedef EFI_STATUS (*PBL_EXIT_BOOT_SERVICES)(IN UINT_PTR MapKey);
|
||||
typedef EFI_STATUS (*PBL_FREE_PAGES)(IN UINT64 Size, IN EFI_PHYSICAL_ADDRESS Memory);
|
||||
typedef EFI_STATUS (*PBL_FREE_POOL)(IN PVOID Memory);
|
||||
typedef EFI_STATUS (*PBL_OPEN_VOLUME)(IN PEFI_DEVICE_PATH_PROTOCOL DevicePath, OUT PEFI_HANDLE DiskHandle, OUT PEFI_FILE_HANDLE *FsHandle);
|
||||
typedef EFI_STATUS (*PBL_OPEN_XT_PROTOCOL)(OUT PVOID *ProtocolHandler, IN PEFI_GUID ProtocolGuid);
|
||||
typedef VOID (*PBL_SLEEP_EXECUTION)(IN ULONG_PTR Milliseconds);
|
||||
|
||||
@ -91,6 +93,11 @@ typedef struct _XTBL_LOADER_PROTOCOL
|
||||
PBL_EXIT_BOOT_SERVICES ExitBootServices;
|
||||
PBL_SLEEP_EXECUTION SleepExecution;
|
||||
} Util;
|
||||
struct
|
||||
{
|
||||
PBL_CLOSE_VOLUME Close;
|
||||
PBL_OPEN_VOLUME Open;
|
||||
} Volume;
|
||||
} XTBL_LOADER_PROTOCOL, *PXTBL_LOADER_PROTOCOL;
|
||||
|
||||
#endif /* __XTDK_BMTYPES_H */
|
||||
|
@ -102,6 +102,8 @@ BlpRegisterXtLoaderProtocol()
|
||||
LdrProtocol.Protocol.Open = BlOpenXtProtocol;
|
||||
LdrProtocol.Util.ExitBootServices = BlExitBootServices;
|
||||
LdrProtocol.Util.SleepExecution = BlSleepExecution;
|
||||
LdrProtocol.Volume.Close = BlCloseVolume;
|
||||
LdrProtocol.Volume.Open = BlOpenVolume;
|
||||
|
||||
/* Register XTLDR loader protocol */
|
||||
BlDebugPrint(L"Registering XT loader protocol\n");
|
||||
|
Loading…
Reference in New Issue
Block a user