#include "Partition.h"\r
\r
//\r
-// Partition Driver Global Variables\r
+// Partition Driver Global Variables.\r
//\r
EFI_DRIVER_BINDING_PROTOCOL gPartitionDriverBinding = {\r
PartitionDriverBindingSupported,\r
NULL\r
};\r
\r
-STATIC \r
+//\r
+// Prioritized function list to detect partition table. \r
+//\r
PARTITION_DETECT_ROUTINE mPartitionDetectRoutineTable[] = {\r
PartitionInstallGptChildHandles,\r
PartitionInstallElToritoChildHandles,\r
// Close the I/O Abstraction(s) used to perform the supported test\r
//\r
gBS->CloseProtocol (\r
- ControllerHandle,\r
- &gEfiDevicePathProtocolGuid,\r
- This->DriverBindingHandle,\r
- ControllerHandle\r
- );\r
+ ControllerHandle,\r
+ &gEfiDevicePathProtocolGuid,\r
+ This->DriverBindingHandle,\r
+ ControllerHandle\r
+ );\r
\r
//\r
// Open the IO Abstraction(s) needed to perform the supported test\r
\r
\r
/**\r
- Stop this driver on ControllerHandle. Support stoping any child handles\r
+ Stop this driver on ControllerHandle. Support stopping any child handles\r
created by this driver.\r
\r
@param This Protocol instance pointer.\r
not be reset.\r
\r
**/\r
-STATIC\r
EFI_STATUS\r
EFIAPI\r
PartitionReset (\r
valid for the device.\r
\r
**/\r
-STATIC\r
EFI_STATUS\r
EFIAPI\r
PartitionReadBlocks (\r
valid for the device.\r
\r
**/\r
-STATIC\r
EFI_STATUS\r
EFIAPI\r
PartitionWriteBlocks (\r
@retval EFI_NO_MEDIA There is no media in the device.\r
\r
**/\r
-STATIC\r
EFI_STATUS\r
EFIAPI\r
PartitionFlushBlocks (\r
Create a child handle for a logical block device that represents the\r
bytes Start to End of the Parent Block IO device.\r
\r
- @param[in] This Protocol instance pointer.\r
- @param[in] This Calling context.\r
+ @param[in] This Protocol instance pointer\r
@param[in] ParentHandle Parent Handle for new child\r
@param[in] ParentDiskIo Parent DiskIo interface\r
@param[in] ParentBlockIo Parent BlockIo interface\r
Private->ParentBlockIo = ParentBlockIo;\r
Private->DiskIo = ParentDiskIo;\r
\r
- Private->BlockIo.Revision = EFI_BLOCK_IO_PROTOCOL_REVISION;\r
+ Private->BlockIo.Revision = ParentBlockIo->Revision;\r
\r
Private->BlockIo.Media = &Private->Media;\r
CopyMem (Private->BlockIo.Media, ParentBlockIo->Media, sizeof (EFI_BLOCK_IO_MEDIA));\r