mirror of https://github.com/acidanthera/audk.git
Do not use statically macros of EFI_SPECIFICATION_VERSION: Use gST->Hdr.Revision to judge the use of UEFI 2.0 services or EFI 1.0 services
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6448 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
5405e9a66b
commit
c9c0c803ec
|
@ -190,8 +190,6 @@ Returns:
|
||||||
return EFI_SUCCESS;
|
return EFI_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if (EFI_SPECIFICATION_VERSION >= 0x00020000)
|
|
||||||
|
|
||||||
static
|
static
|
||||||
VOID
|
VOID
|
||||||
EFIAPI
|
EFIAPI
|
||||||
|
@ -211,7 +209,7 @@ EventNotifySignalAllNullEvent (
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
|
@ -245,49 +243,50 @@ Returns:
|
||||||
UINT32 EventType;
|
UINT32 EventType;
|
||||||
EFI_EVENT_NOTIFY WorkerNotifyFunction;
|
EFI_EVENT_NOTIFY WorkerNotifyFunction;
|
||||||
|
|
||||||
#if (EFI_SPECIFICATION_VERSION < 0x00020000)
|
if (gST->Hdr.Revision < 0x00020000) {
|
||||||
|
|
||||||
if (NotifyFunction == NULL) {
|
if (NotifyFunction == NULL) {
|
||||||
EventType = EFI_EVENT_SIGNAL_LEGACY_BOOT | EFI_EVENT_NOTIFY_SIGNAL_ALL;
|
EventType = EFI_EVENT_SIGNAL_LEGACY_BOOT | EFI_EVENT_NOTIFY_SIGNAL_ALL;
|
||||||
} else {
|
} else {
|
||||||
EventType = EFI_EVENT_SIGNAL_LEGACY_BOOT;
|
EventType = EFI_EVENT_SIGNAL_LEGACY_BOOT;
|
||||||
}
|
}
|
||||||
WorkerNotifyFunction = NotifyFunction;
|
|
||||||
|
|
||||||
//
|
|
||||||
// prior to UEFI 2.0 use Tiano extension to EFI
|
|
||||||
//
|
|
||||||
Status = gBS->CreateEvent (
|
|
||||||
EventType,
|
|
||||||
NotifyTpl,
|
|
||||||
WorkerNotifyFunction,
|
|
||||||
NotifyContext,
|
|
||||||
LegacyBootEvent
|
|
||||||
);
|
|
||||||
#else
|
|
||||||
|
|
||||||
EventType = EFI_EVENT_NOTIFY_SIGNAL;
|
|
||||||
if (NotifyFunction == NULL) {
|
|
||||||
//
|
|
||||||
// CreatEventEx will check NotifyFunction is NULL or not
|
|
||||||
//
|
|
||||||
WorkerNotifyFunction = EventNotifySignalAllNullEvent;
|
|
||||||
} else {
|
|
||||||
WorkerNotifyFunction = NotifyFunction;
|
WorkerNotifyFunction = NotifyFunction;
|
||||||
|
|
||||||
|
//
|
||||||
|
// prior to UEFI 2.0 use Tiano extension to EFI
|
||||||
|
//
|
||||||
|
Status = gBS->CreateEvent (
|
||||||
|
EventType,
|
||||||
|
NotifyTpl,
|
||||||
|
WorkerNotifyFunction,
|
||||||
|
NotifyContext,
|
||||||
|
LegacyBootEvent
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
|
||||||
|
EventType = EFI_EVENT_NOTIFY_SIGNAL;
|
||||||
|
if (NotifyFunction == NULL) {
|
||||||
|
//
|
||||||
|
// CreatEventEx will check NotifyFunction is NULL or not
|
||||||
|
//
|
||||||
|
WorkerNotifyFunction = EventNotifySignalAllNullEvent;
|
||||||
|
} else {
|
||||||
|
WorkerNotifyFunction = NotifyFunction;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// For UEFI 2.0 and the future use an Event Group
|
||||||
|
//
|
||||||
|
Status = gBS->CreateEventEx (
|
||||||
|
EventType,
|
||||||
|
NotifyTpl,
|
||||||
|
WorkerNotifyFunction,
|
||||||
|
NotifyContext,
|
||||||
|
&gEfiEventLegacyBootGuid,
|
||||||
|
LegacyBootEvent
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// For UEFI 2.0 and the future use an Event Group
|
|
||||||
//
|
|
||||||
Status = gBS->CreateEventEx (
|
|
||||||
EventType,
|
|
||||||
NotifyTpl,
|
|
||||||
WorkerNotifyFunction,
|
|
||||||
NotifyContext,
|
|
||||||
&gEfiEventLegacyBootGuid,
|
|
||||||
LegacyBootEvent
|
|
||||||
);
|
|
||||||
#endif
|
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -324,48 +323,48 @@ Return:
|
||||||
UINT32 EventType;
|
UINT32 EventType;
|
||||||
EFI_EVENT_NOTIFY WorkerNotifyFunction;
|
EFI_EVENT_NOTIFY WorkerNotifyFunction;
|
||||||
|
|
||||||
#if (EFI_SPECIFICATION_VERSION < 0x00020000)
|
if (gST->Hdr.Revision < 0x00020000) {
|
||||||
|
|
||||||
if (NotifyFunction == NULL) {
|
if (NotifyFunction == NULL) {
|
||||||
EventType = EFI_EVENT_SIGNAL_READY_TO_BOOT | EFI_EVENT_NOTIFY_SIGNAL_ALL;
|
EventType = EFI_EVENT_SIGNAL_READY_TO_BOOT | EFI_EVENT_NOTIFY_SIGNAL_ALL;
|
||||||
} else {
|
} else {
|
||||||
EventType = EFI_EVENT_SIGNAL_READY_TO_BOOT;
|
EventType = EFI_EVENT_SIGNAL_READY_TO_BOOT;
|
||||||
}
|
}
|
||||||
WorkerNotifyFunction = NotifyFunction;
|
|
||||||
|
|
||||||
//
|
|
||||||
// prior to UEFI 2.0 use Tiano extension to EFI
|
|
||||||
//
|
|
||||||
Status = gBS->CreateEvent (
|
|
||||||
EventType,
|
|
||||||
NotifyTpl,
|
|
||||||
WorkerNotifyFunction,
|
|
||||||
NotifyContext,
|
|
||||||
ReadyToBootEvent
|
|
||||||
);
|
|
||||||
#else
|
|
||||||
|
|
||||||
EventType = EFI_EVENT_NOTIFY_SIGNAL;
|
|
||||||
if (NotifyFunction == NULL) {
|
|
||||||
//
|
|
||||||
// CreatEventEx will check NotifyFunction is NULL or not
|
|
||||||
//
|
|
||||||
WorkerNotifyFunction = EventNotifySignalAllNullEvent;
|
|
||||||
} else {
|
|
||||||
WorkerNotifyFunction = NotifyFunction;
|
WorkerNotifyFunction = NotifyFunction;
|
||||||
|
|
||||||
|
//
|
||||||
|
// prior to UEFI 2.0 use Tiano extension to EFI
|
||||||
|
//
|
||||||
|
Status = gBS->CreateEvent (
|
||||||
|
EventType,
|
||||||
|
NotifyTpl,
|
||||||
|
WorkerNotifyFunction,
|
||||||
|
NotifyContext,
|
||||||
|
ReadyToBootEvent
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
|
||||||
|
EventType = EFI_EVENT_NOTIFY_SIGNAL;
|
||||||
|
if (NotifyFunction == NULL) {
|
||||||
|
//
|
||||||
|
// CreatEventEx will check NotifyFunction is NULL or not
|
||||||
|
//
|
||||||
|
WorkerNotifyFunction = EventNotifySignalAllNullEvent;
|
||||||
|
} else {
|
||||||
|
WorkerNotifyFunction = NotifyFunction;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// For UEFI 2.0 and the future use an Event Group
|
||||||
|
//
|
||||||
|
Status = gBS->CreateEventEx (
|
||||||
|
EventType,
|
||||||
|
NotifyTpl,
|
||||||
|
WorkerNotifyFunction,
|
||||||
|
NotifyContext,
|
||||||
|
&gEfiEventReadyToBootGuid,
|
||||||
|
ReadyToBootEvent
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// For UEFI 2.0 and the future use an Event Group
|
|
||||||
//
|
|
||||||
Status = gBS->CreateEventEx (
|
|
||||||
EventType,
|
|
||||||
NotifyTpl,
|
|
||||||
WorkerNotifyFunction,
|
|
||||||
NotifyContext,
|
|
||||||
&gEfiEventReadyToBootGuid,
|
|
||||||
ReadyToBootEvent
|
|
||||||
);
|
|
||||||
#endif
|
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue