);\r
\r
/**\r
- Create a Legacy Boot Event. \r
+ Creates an EFI event in the Legacy Boot Event Group. Prior to UEFI 2.0 this \r
+ was done via a non blessed UEFI extensions and this library abstracts the \r
+ implementation mechanism of this event from the caller.\r
\r
- Tiano extended the CreateEvent Type enum to add a legacy boot event type. \r
- This was bad as Tiano did not own the enum. In UEFI 2.0 CreateEventEx was\r
- added and now it's possible to not voilate the UEFI specification by \r
- declaring a GUID for the legacy boot event class. This library supports\r
- the EDK/EFI 1.10 form and EDK II/UEFI 2.0 form and allows common code to \r
- work both ways.\r
+ This function abstracts the creation of the Legacy Boot Event. The Framework \r
+ moved from a proprietary to UEFI 2.0 based mechanism. This library abstracts \r
+ the caller from how this event is created to prevent to code form having to \r
+ change with the version of the specification supported.\r
+ If LegacyBootEvent is NULL, then ASSERT().\r
\r
@param LegacyBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).\r
\r
);\r
\r
/**\r
- Create a Read to Boot Event. \r
+ Create an EFI event in the Ready To Boot Event Group. Prior to UEFI 2.0 this \r
+ was done via a non-standard UEFI extension, and this library abstracts the \r
+ implementation mechanism of this event from the caller. \r
\r
- Tiano extended the CreateEvent Type enum to add a ready to boot event type. \r
- This was bad as Tiano did not own the enum. In UEFI 2.0 CreateEventEx was\r
- added and now it's possible to not voilate the UEFI specification and use \r
- the ready to boot event class defined in UEFI 2.0. This library supports\r
- the EDK/EFI 1.10 form and EDKII/UEFI 2.0 form and allows common code to \r
- work both ways.\r
+ This function abstracts the creation of the Ready to Boot Event. The Framework \r
+ moved from a proprietary to UEFI 2.0-based mechanism. This library abstracts \r
+ the caller from how this event is created to prevent the code form having to \r
+ change with the version of the specification supported.\r
+ If ReadyToBootEvent is NULL, then ASSERT().\r
\r
@param ReadyToBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).\r
\r
/**\r
Initialize a Firmware Volume (FV) Media Device Path node.\r
\r
- Tiano extended the EFI 1.10 device path nodes. Tiano does not own this enum\r
- so as we move to UEFI 2.0 support we must use a mechanism that conforms with\r
- the UEFI 2.0 specification to define the FV device path. An UEFI GUIDed \r
- device path is defined for Tiano extensions of device path. If the code \r
- is compiled to conform with the UEFI 2.0 specification use the new device path\r
- else use the old form for backwards compatability.\r
-\r
+ The Framework FwVol Device Path changed to conform to the UEFI 2.0 specification. \r
+ This library function abstracts initializing a device path node.\r
+ \r
+ Initialize the MEDIA_FW_VOL_FILEPATH_DEVICE_PATH data structure. This device \r
+ path changed in the DXE CIS version 0.92 in a non back ward compatible way to \r
+ not conflict with the UEFI 2.0 specification. This function abstracts the \r
+ differences from the caller.\r
+ \r
+ If FvDevicePathNode is NULL, then ASSERT().\r
+ If NameGuid is NULL, then ASSERT().\r
+ \r
@param FvDevicePathNode Pointer to a FV device path node to initialize\r
@param NameGuid FV file name to use in FvDevicePathNode\r
\r
/**\r
Check to see if the Firmware Volume (FV) Media Device Path is valid \r
\r
- Tiano extended the EFI 1.10 device path nodes. Tiano does not own this enum\r
- so as we move to UEFI 2.0 support we must use a mechanism that conforms with\r
- the UEFI 2.0 specification to define the FV device path. An UEFI GUIDed \r
- device path is defined for Tiano extensions of device path. If the code \r
- is compiled to conform with the UEFI 2.0 specification use the new device path\r
- else use the old form for backwards compatability. The return value to this\r
- function points to a location in FvDevicePathNode and it does not allocate\r
- new memory for the GUID pointer that is returned.\r
+ The Framework FwVol Device Path changed to conform to the UEFI 2.0 specification. \r
+ This library function abstracts validating a device path node.\r
+ \r
+ Check the MEDIA_FW_VOL_FILEPATH_DEVICE_PATH data structure to see if it's valid. \r
+ If it is valid, then return the GUID file name from the device path node. Otherwise, \r
+ return NULL. This device path changed in the DXE CIS version 0.92 in a non back ward \r
+ compatible way to not conflict with the UEFI 2.0 specification. This function abstracts \r
+ the differences from the caller.\r
+ If FvDevicePathNode is NULL, then ASSERT().\r
\r
@param FvDevicePathNode Pointer to FV device path to check.\r
\r
/** @file\r
Status code Runtime Protocol as defined in PI Specification VOLUME 2 DXE\r
\r
- The StatusCode () Tiano service is added to the EFI system table and the \r
+ The StatusCode () service is added to the EFI system table and the \r
EFI_STATUS_CODE_ARCH_PROTOCOL_GUID protocol is registered with a NULL \r
pointer.\r
\r
}\r
\r
/**\r
- Create a Legacy Boot Event.\r
-\r
- Tiano extended the CreateEvent Type enum to add a legacy boot event type.\r
- This was bad as Tiano did not own the enum. In UEFI 2.0 CreateEventEx was\r
- added and now it's possible to not voilate the UEFI specification by\r
- declaring a GUID for the legacy boot event class. This library supports\r
- the EDK/EFI 1.10 form and EDK II/UEFI 2.0 form and allows common code to\r
- work both ways.\r
-\r
+ Creates an EFI event in the Legacy Boot Event Group. Prior to UEFI 2.0 this \r
+ was done via a non blessed UEFI extensions and this library abstracts the \r
+ implementation mechanism of this event from the caller.\r
+ \r
+ This function abstracts the creation of the Legacy Boot Event. The Framework \r
+ moved from a proprietary to UEFI 2.0 based mechanism. This library abstracts \r
+ the caller from how this event is created to prevent to code form having to \r
+ change with the version of the specification supported.\r
+ If LegacyBootEvent is NULL, then ASSERT().\r
+ \r
@param LegacyBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).\r
\r
@retval EFI_SUCCESS Event was created.\r
}\r
\r
/**\r
- Create a "Ready to Boot" Event.\r
-\r
- Tiano extended the CreateEvent Type enum to add a ready to boot event type.\r
- This was bad as Tiano did not own the enum. In UEFI 2.0 CreateEventEx was\r
- added and now it's possible to not voilate the UEFI specification and use\r
- the ready to boot event class defined in UEFI 2.0. This library supports\r
- the EDK/EFI 1.10 form and EDK II/UEFI 2.0 form and allows common code to\r
- work both ways.\r
+ Create an EFI event in the Ready To Boot Event Group. Prior to UEFI 2.0 this \r
+ was done via a non-standard UEFI extension, and this library abstracts the \r
+ implementation mechanism of this event from the caller.\r
+ \r
+ This function abstracts the creation of the Ready to Boot Event. The Framework \r
+ moved from a proprietary to UEFI 2.0-based mechanism. This library abstracts \r
+ the caller from how this event is created to prevent the code form having to \r
+ change with the version of the specification supported.\r
+ If ReadyToBootEvent is NULL, then ASSERT().\r
\r
@param ReadyToBootEvent Returns the EFI event returned from gBS->CreateEvent(Ex).\r
\r
\r
\r
/**\r
- Check to see if the Firmware Volume (FV) Media Device Path is valid\r
-\r
- Tiano extended the EFI 1.10 device path nodes. Tiano does not own this enum\r
- so as we move to UEFI 2.0 support we must use a mechanism that conforms with\r
- the UEFI 2.0 specification to define the FV device path. An UEFI GUIDed\r
- device path is defined for Tiano extensions of device path. If the code\r
- is compiled to conform with the UEFI 2.0 specification use the new device path\r
- else use the old form for backwards compatability. The return value to this\r
- function points to a location in FvDevicePathNode and it does not allocate\r
- new memory for the GUID pointer that is returned.\r
+ The Framework FwVol Device Path changed to conform to the UEFI 2.0 specification. \r
+ This library function abstracts validating a device path node.\r
+\r
+ Check the MEDIA_FW_VOL_FILEPATH_DEVICE_PATH data structure to see if it's valid. \r
+ If it is valid, then return the GUID file name from the device path node. \r
+ Otherwise, return NULL. This device path changed in the DXE CIS version 0.92 \r
+ in a non back ward compatible way to not conflict with the UEFI 2.0 specification. \r
+ This function abstracts the differences from the caller.\r
If FvDevicePathNode is NULL, then ASSERT().\r
\r
@param FvFileDevicePathNode Pointer to FV device path to check.\r
\r
\r
/**\r
- Initialize a Firmware Volume (FV) Media Device Path node.\r
-\r
- Tiano extended the EFI 1.10 device path nodes. Tiano does not own this enum\r
- so as we move to UEFI 2.0 support we must use a mechanism that conforms with\r
- the UEFI 2.0 specification to define the FV device path. An UEFI GUIDed\r
- device path is defined for Tiano extensions of device path. If the code\r
- is compiled to conform with the UEFI 2.0 specification use the new device path\r
- else use the old form for backwards compatability.\r
+ The Framework FwVol Device Path changed to conform to the UEFI 2.0 specification. \r
+ This library function abstracts initializing a device path node.\r
+\r
+ Initialize the MEDIA_FW_VOL_FILEPATH_DEVICE_PATH data structure. This device \r
+ path changed in the DXE CIS version 0.92 in a non back ward compatible way to \r
+ not conflict with the UEFI 2.0 specification. This function abstracts the \r
+ differences from the caller.\r
If FvDevicePathNode is NULL, then ASSERT().\r
If NameGuid is NULL, then ASSERT().\r
\r