- The DXE driver that produces this protocol must be a runtime driver. This \r
- driver is responsible for initializing the SetVirtualAddressMap() and \r
- ConvertPointer() fields of the EFI Runtime Services Table and the \r
- CalculateCrc32() field of the EFI Boot Services Table. See the Runtime \r
- Services chapter and the Boot Services chapter for details on these services.\r
- After the two fields of the EFI Runtime Services Table and the one field of \r
- the EFI Boot Services Table have been initialized, the driver must install \r
- the EFI_RUNTIME_ARCH_PROTOCOL_GUID on a new handle with an EFI_RUNTIME_ARCH_ \r
- PROTOCOL interface pointer. The installation of this protocol informs the \r
- DXE core that the virtual memory services and the 32-bit CRC services are \r
- now available, and the DXE core must update the 32-bit CRC of the EFI Runtime \r
- Services Table and the 32-bit CRC of the EFI Boot Services Table.\r
-\r
- All runtime core services are provided by the EFI_RUNTIME_ARCH_PROTOCOL. \r
- This includes the support for registering runtime images that must be \r
- re-fixed up when a transition is made from physical mode to virtual mode. \r
- This protocol also supports all events that are defined to fire at runtime. \r
- This protocol also contains a CRC-32 function that will be used by the DXE \r
- core as a boot service. The EFI_RUNTIME_ARCH_PROTOCOL needs the CRC-32 \r
- function when a transition is made from physical mode to virtual mode and \r
- the EFI System Table and EFI Runtime Table are fixed up with virtual pointers.\r
-\r
- @param RegisterRuntimeImage\r
- Register a runtime image so it can be converted to virtual mode if the EFI Runtime Services \r
- SetVirtualAddressMap() is called.\r
-\r
- @param RegisterRuntimeEvent\r
- Register an event than needs to be notified at runtime. \r
+ Allows the runtime functionality of the DXE Foundation to be contained in a \r
+ separate driver. It also provides hooks for the DXE Foundation to export \r
+ information that is needed at runtime. As such, this protocol allows the DXE \r
+ Foundation to manage runtime drivers and events. This protocol also implies \r
+ that the runtime services required to transition to virtual mode, \r
+ SetVirtualAddressMap() and ConvertPointer(), have been registered into the \r
+ EFI Runtime Table in the EFI System Partition. This protocol must be produced \r
+ by a runtime DXE driver and may only be consumed by the DXE Foundation.\r
+\r
+ @param ImageHead\r
+ A list of type EFI_RUNTIME_IMAGE_ENTRY.\r
+\r
+ @param EventHead\r
+ A list of type EFI_RUNTIME_EVENT_ENTRY.\r
+\r
+ @param MemoryDescriptorSize\r
+ Size of a memory descriptor that is return by GetMemoryMap().\r
+\r
+ @param MemoryDescriptorVersion\r
+ Version of a memory descriptor that is return by GetMemoryMap().\r
+\r
+ @param MemoryMapSize \r
+ Size of the memory map in bytes contained in MemoryMapPhysical and MemoryMapVirtual. \r
+\r
+ @param MemoryMapPhysical\r
+ Pointer to a runtime buffer that contains a copy of \r
+ the memory map returned via GetMemoryMap().\r
+\r
+ @param MemoryMapVirtual\r
+ Pointer to MemoryMapPhysical that is updated to virtual mode after SetVirtualAddressMap().\r
+\r
+ @param VirtualMode\r
+ Boolean that is TRUE if SetVirtualAddressMap() has been called.\r
+\r
+ @param AtRuntime\r
+ Boolean that is TRUE if ExitBootServices () has been called.\r