EFI_STATUS SemihostFsEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) { EFI_STATUS Status; Status = EFI_NOT_FOUND; if (SemihostConnectionSupported ()) { mSemihostFsLabel = AllocateCopyPool (StrSize (DEFAULT_SEMIHOST_FS_LABEL), DEFAULT_SEMIHOST_FS_LABEL); if (mSemihostFsLabel == NULL) { return EFI_OUT_OF_RESOURCES; } Status = gBS->InstallMultipleProtocolInterfaces ( &gInstallHandle, &gEfiSimpleFileSystemProtocolGuid, &gSemihostFs, &gEfiDevicePathProtocolGuid, &gDevicePath, NULL ); if (EFI_ERROR(Status)) { FreePool (mSemihostFsLabel); } } return Status; }
EFI_STATUS SemihostFsEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) { EFI_STATUS Status = EFI_NOT_FOUND; if (SemihostConnectionSupported ()) { Status = gBS->InstallMultipleProtocolInterfaces ( &gInstallHandle, &gEfiSimpleFileSystemProtocolGuid, &gSemihostFs, &gEfiDevicePathProtocolGuid, &gDevicePath, NULL ); } return Status; }