\r
#include "InternalPlatDriOverrideDxe.h"\r
\r
-#define PLATFORM_OVERRIDE_ITEM_SIGNATURE SIGNATURE_32('p','d','o','i')\r
- typedef struct _PLATFORM_OVERRIDE_ITEM {\r
- UINTN Signature;\r
- LIST_ENTRY Link;\r
- UINT32 DriverInfoNum;\r
- EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath;\r
+#define PLATFORM_OVERRIDE_ITEM_SIGNATURE SIGNATURE_32('p','d','o','i')\r
+typedef struct _PLATFORM_OVERRIDE_ITEM {\r
+ UINTN Signature;\r
+ LIST_ENTRY Link;\r
+ UINT32 DriverInfoNum;\r
+ EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath;\r
///\r
/// List of DRIVER_IMAGE_INFO\r
///\r
- LIST_ENTRY DriverInfoList;\r
- EFI_HANDLE LastReturnedImageHandle;\r
+ LIST_ENTRY DriverInfoList;\r
+ EFI_HANDLE LastReturnedImageHandle;\r
} PLATFORM_OVERRIDE_ITEM;\r
\r
-#define DRIVER_IMAGE_INFO_SIGNATURE SIGNATURE_32('p','d','i','i')\r
+#define DRIVER_IMAGE_INFO_SIGNATURE SIGNATURE_32('p','d','i','i')\r
typedef struct _DRIVER_IMAGE_INFO {\r
- UINTN Signature;\r
- LIST_ENTRY Link;\r
- EFI_HANDLE ImageHandle;\r
- EFI_DEVICE_PATH_PROTOCOL *DriverImagePath;\r
- BOOLEAN UnLoadable;\r
- BOOLEAN UnStartable;\r
+ UINTN Signature;\r
+ LIST_ENTRY Link;\r
+ EFI_HANDLE ImageHandle;\r
+ EFI_DEVICE_PATH_PROTOCOL *DriverImagePath;\r
+ BOOLEAN UnLoadable;\r
+ BOOLEAN UnStartable;\r
} DRIVER_IMAGE_INFO;\r
\r
-#define DEVICE_PATH_STACK_ITEM_SIGNATURE SIGNATURE_32('d','p','s','i')\r
-typedef struct _DEVICE_PATH_STACK_ITEM{\r
- UINTN Signature;\r
- LIST_ENTRY Link;\r
- EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
+#define DEVICE_PATH_STACK_ITEM_SIGNATURE SIGNATURE_32('d','p','s','i')\r
+typedef struct _DEVICE_PATH_STACK_ITEM {\r
+ UINTN Signature;\r
+ LIST_ENTRY Link;\r
+ EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
} DEVICE_PATH_STACK_ITEM;\r
\r
-\r
-LIST_ENTRY mDevicePathStack = INITIALIZE_LIST_HEAD_VARIABLE (mDevicePathStack);\r
+LIST_ENTRY mDevicePathStack = INITIALIZE_LIST_HEAD_VARIABLE (mDevicePathStack);\r
\r
/**\r
Push a controller device path into a globle device path list.\r
EFI_STATUS\r
EFIAPI\r
PushDevPathStack (\r
- IN EFI_DEVICE_PATH_PROTOCOL *DevicePath\r
+ IN EFI_DEVICE_PATH_PROTOCOL *DevicePath\r
)\r
{\r
DEVICE_PATH_STACK_ITEM *DevicePathStackItem;\r
\r
DevicePathStackItem = AllocateZeroPool (sizeof (DEVICE_PATH_STACK_ITEM));\r
ASSERT (DevicePathStackItem != NULL);\r
- DevicePathStackItem->Signature = DEVICE_PATH_STACK_ITEM_SIGNATURE;\r
+ DevicePathStackItem->Signature = DEVICE_PATH_STACK_ITEM_SIGNATURE;\r
DevicePathStackItem->DevicePath = DuplicateDevicePath (DevicePath);\r
InsertTailList (&mDevicePathStack, &DevicePathStackItem->Link);\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Pop a controller device path from a globle device path list\r
\r
EFI_STATUS\r
EFIAPI\r
PopDevPathStack (\r
- OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath\r
+ OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath\r
)\r
{\r
DEVICE_PATH_STACK_ITEM *DevicePathStackItem;\r
//\r
// Check if the stack is empty\r
//\r
- if (ItemListIndex != &mDevicePathStack){\r
- DevicePathStackItem = CR(ItemListIndex, DEVICE_PATH_STACK_ITEM, Link, DEVICE_PATH_STACK_ITEM_SIGNATURE);\r
+ if (ItemListIndex != &mDevicePathStack) {\r
+ DevicePathStackItem = CR (ItemListIndex, DEVICE_PATH_STACK_ITEM, Link, DEVICE_PATH_STACK_ITEM_SIGNATURE);\r
if (DevicePath != NULL) {\r
*DevicePath = DuplicateDevicePath (DevicePathStackItem->DevicePath);\r
}\r
+\r
FreePool (DevicePathStackItem->DevicePath);\r
RemoveEntryList (&DevicePathStackItem->Link);\r
FreePool (DevicePathStackItem);\r
return EFI_SUCCESS;\r
}\r
+\r
return EFI_NOT_FOUND;\r
}\r
\r
-\r
/**\r
Check whether a controller device path is in a globle device path list\r
\r
BOOLEAN\r
EFIAPI\r
CheckExistInStack (\r
- IN EFI_DEVICE_PATH_PROTOCOL *DevicePath\r
+ IN EFI_DEVICE_PATH_PROTOCOL *DevicePath\r
)\r
{\r
DEVICE_PATH_STACK_ITEM *DevicePathStackItem;\r
UINTN DevicePathSize;\r
\r
ItemListIndex = mDevicePathStack.BackLink;\r
- while (ItemListIndex != &mDevicePathStack){\r
- DevicePathStackItem = CR(ItemListIndex, DEVICE_PATH_STACK_ITEM, Link, DEVICE_PATH_STACK_ITEM_SIGNATURE);\r
- DevicePathSize = GetDevicePathSize (DevicePath);\r
+ while (ItemListIndex != &mDevicePathStack) {\r
+ DevicePathStackItem = CR (ItemListIndex, DEVICE_PATH_STACK_ITEM, Link, DEVICE_PATH_STACK_ITEM_SIGNATURE);\r
+ DevicePathSize = GetDevicePathSize (DevicePath);\r
if (DevicePathSize == GetDevicePathSize (DevicePathStackItem->DevicePath)) {\r
if (CompareMem (DevicePath, DevicePathStackItem->DevicePath, DevicePathSize) == 0) {\r
return TRUE;\r
}\r
}\r
+\r
ItemListIndex = ItemListIndex->BackLink;\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
UpdateFvFileDevicePath (\r
- IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,\r
- IN EFI_GUID *FileGuid,\r
- IN EFI_HANDLE CallerImageHandle\r
+ IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,\r
+ IN EFI_GUID *FileGuid,\r
+ IN EFI_HANDLE CallerImageHandle\r
)\r
{\r
- EFI_DEVICE_PATH_PROTOCOL *TempDevicePath;\r
- EFI_DEVICE_PATH_PROTOCOL *LastDeviceNode;\r
- EFI_STATUS Status;\r
- EFI_GUID *GuidPoint;\r
- UINTN Index;\r
- UINTN FvHandleCount;\r
- EFI_HANDLE *FvHandleBuffer;\r
- EFI_FV_FILETYPE Type;\r
- UINTN Size;\r
- EFI_FV_FILE_ATTRIBUTES Attributes;\r
- UINT32 AuthenticationStatus;\r
- BOOLEAN FindFvFile;\r
- EFI_LOADED_IMAGE_PROTOCOL *LoadedImage;\r
- EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv;\r
- MEDIA_FW_VOL_FILEPATH_DEVICE_PATH FvFileNode;\r
- EFI_HANDLE FoundFvHandle;\r
- EFI_DEVICE_PATH_PROTOCOL *NewDevicePath;\r
- BOOLEAN HasFvNode;\r
+ EFI_DEVICE_PATH_PROTOCOL *TempDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL *LastDeviceNode;\r
+ EFI_STATUS Status;\r
+ EFI_GUID *GuidPoint;\r
+ UINTN Index;\r
+ UINTN FvHandleCount;\r
+ EFI_HANDLE *FvHandleBuffer;\r
+ EFI_FV_FILETYPE Type;\r
+ UINTN Size;\r
+ EFI_FV_FILE_ATTRIBUTES Attributes;\r
+ UINT32 AuthenticationStatus;\r
+ BOOLEAN FindFvFile;\r
+ EFI_LOADED_IMAGE_PROTOCOL *LoadedImage;\r
+ EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv;\r
+ MEDIA_FW_VOL_FILEPATH_DEVICE_PATH FvFileNode;\r
+ EFI_HANDLE FoundFvHandle;\r
+ EFI_DEVICE_PATH_PROTOCOL *NewDevicePath;\r
+ BOOLEAN HasFvNode;\r
\r
if (DevicePath == NULL) {\r
return EFI_INVALID_PARAMETER;\r
TempDevicePath = *DevicePath;\r
LastDeviceNode = TempDevicePath;\r
while (!IsDevicePathEnd (TempDevicePath)) {\r
- LastDeviceNode = TempDevicePath;\r
- TempDevicePath = NextDevicePathNode (TempDevicePath);\r
+ LastDeviceNode = TempDevicePath;\r
+ TempDevicePath = NextDevicePathNode (TempDevicePath);\r
}\r
- GuidPoint = EfiGetNameGuidFromFwVolDevicePathNode ((MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *) LastDeviceNode);\r
+\r
+ GuidPoint = EfiGetNameGuidFromFwVolDevicePathNode ((MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *)LastDeviceNode);\r
if (GuidPoint == NULL) {\r
//\r
// If this option does not point to a FV file, just return EFI_UNSUPPORTED.\r
// Check to see if the device path contains memory map node\r
//\r
TempDevicePath = *DevicePath;\r
- HasFvNode = FALSE;\r
+ HasFvNode = FALSE;\r
while (!IsDevicePathEnd (TempDevicePath)) {\r
//\r
// Use old Device Path\r
//\r
- if (DevicePathType (TempDevicePath) == HARDWARE_DEVICE_PATH &&\r
- DevicePathSubType (TempDevicePath) == HW_MEMMAP_DP) {\r
+ if ((DevicePathType (TempDevicePath) == HARDWARE_DEVICE_PATH) &&\r
+ (DevicePathSubType (TempDevicePath) == HW_MEMMAP_DP))\r
+ {\r
HasFvNode = TRUE;\r
break;\r
}\r
+\r
TempDevicePath = NextDevicePathNode (TempDevicePath);\r
}\r
\r
// Check whether the input Fv file device path is valid\r
//\r
TempDevicePath = *DevicePath;\r
- FoundFvHandle = NULL;\r
- Status = gBS->LocateDevicePath (\r
- &gEfiFirmwareVolume2ProtocolGuid,\r
- &TempDevicePath,\r
- &FoundFvHandle\r
- );\r
+ FoundFvHandle = NULL;\r
+ Status = gBS->LocateDevicePath (\r
+ &gEfiFirmwareVolume2ProtocolGuid,\r
+ &TempDevicePath,\r
+ &FoundFvHandle\r
+ );\r
if (!EFI_ERROR (Status)) {\r
Status = gBS->HandleProtocol (\r
FoundFvHandle,\r
&gEfiFirmwareVolume2ProtocolGuid,\r
- (VOID **) &Fv\r
+ (VOID **)&Fv\r
);\r
if (!EFI_ERROR (Status)) {\r
//\r
// Look for the input wanted FV file in current FV\r
// First, try to look for in Caller own FV. Caller and input wanted FV file usually are in the same FV\r
//\r
- FindFvFile = FALSE;\r
+ FindFvFile = FALSE;\r
FoundFvHandle = NULL;\r
- Status = gBS->HandleProtocol (\r
- CallerImageHandle,\r
- &gEfiLoadedImageProtocolGuid,\r
- (VOID **) &LoadedImage\r
- );\r
+ Status = gBS->HandleProtocol (\r
+ CallerImageHandle,\r
+ &gEfiLoadedImageProtocolGuid,\r
+ (VOID **)&LoadedImage\r
+ );\r
if (!EFI_ERROR (Status)) {\r
Status = gBS->HandleProtocol (\r
LoadedImage->DeviceHandle,\r
&gEfiFirmwareVolume2ProtocolGuid,\r
- (VOID **) &Fv\r
+ (VOID **)&Fv\r
);\r
if (!EFI_ERROR (Status)) {\r
Status = Fv->ReadFile (\r
&AuthenticationStatus\r
);\r
if (!EFI_ERROR (Status)) {\r
- FindFvFile = TRUE;\r
+ FindFvFile = TRUE;\r
FoundFvHandle = LoadedImage->DeviceHandle;\r
}\r
}\r
}\r
+\r
//\r
// Second, if fail to find, try to enumerate all FV\r
//\r
gBS->HandleProtocol (\r
FvHandleBuffer[Index],\r
&gEfiFirmwareVolume2ProtocolGuid,\r
- (VOID **) &Fv\r
+ (VOID **)&Fv\r
);\r
\r
Status = Fv->ReadFile (\r
//\r
continue;\r
}\r
- FindFvFile = TRUE;\r
+\r
+ FindFvFile = TRUE;\r
FoundFvHandle = FvHandleBuffer[Index];\r
break;\r
}\r
//\r
NewDevicePath = DevicePathFromHandle (FoundFvHandle);\r
EfiInitializeFwVolDevicepathNode (&FvFileNode, FileGuid);\r
- NewDevicePath = AppendDevicePathNode (NewDevicePath, (EFI_DEVICE_PATH_PROTOCOL *) &FvFileNode);\r
- *DevicePath = NewDevicePath;\r
+ NewDevicePath = AppendDevicePathNode (NewDevicePath, (EFI_DEVICE_PATH_PROTOCOL *)&FvFileNode);\r
+ *DevicePath = NewDevicePath;\r
return EFI_SUCCESS;\r
}\r
+\r
return EFI_NOT_FOUND;\r
}\r
\r
VOID *\r
EFIAPI\r
GetVariableAndSize (\r
- IN CHAR16 *Name,\r
- IN EFI_GUID *VendorGuid,\r
- OUT UINTN *VariableSize\r
+ IN CHAR16 *Name,\r
+ IN EFI_GUID *VendorGuid,\r
+ OUT UINTN *VariableSize\r
)\r
{\r
EFI_STATUS Status;\r
//\r
// Pass in a zero size buffer to find the required buffer size.\r
//\r
- BufferSize = 0;\r
- Status = gRT->GetVariable (Name, VendorGuid, NULL, &BufferSize, Buffer);\r
+ BufferSize = 0;\r
+ Status = gRT->GetVariable (Name, VendorGuid, NULL, &BufferSize, Buffer);\r
if (Status == EFI_BUFFER_TOO_SMALL) {\r
//\r
// Allocate the buffer to return\r
if (Buffer == NULL) {\r
return NULL;\r
}\r
+\r
//\r
// Read variable into the allocated buffer.\r
//\r
return EFI_SUCCESS;\r
}\r
\r
- DevicePath = DuplicateDevicePath (DevicePathToConnect);\r
- CopyOfDevicePath = DevicePath;\r
+ DevicePath = DuplicateDevicePath (DevicePathToConnect);\r
+ CopyOfDevicePath = DevicePath;\r
if (DevicePath == NULL) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
//\r
// After this call DevicePath points to the next Instance\r
//\r
- Instance = GetNextDevicePathInstance (&DevicePath, &Size);\r
+ Instance = GetNextDevicePathInstance (&DevicePath, &Size);\r
ASSERT (Instance != NULL);\r
\r
- Next = Instance;\r
+ Next = Instance;\r
while (!IsDevicePathEndType (Next)) {\r
Next = NextDevicePathNode (Next);\r
}\r
gBS->ConnectController (Handle, NULL, RemainingDevicePath, FALSE);\r
}\r
}\r
+\r
//\r
// Loop until RemainingDevicePath is an empty device path\r
//\r
} while (!EFI_ERROR (Status) && !IsDevicePathEnd (RemainingDevicePath));\r
-\r
} while (DevicePath != NULL);\r
\r
if (CopyOfDevicePath != NULL) {\r
FreePool (CopyOfDevicePath);\r
}\r
+\r
//\r
// All handle with DevicePath exists in the handle database\r
//\r
EFI_STATUS\r
EFIAPI\r
FreeMappingDatabase (\r
- IN OUT LIST_ENTRY *MappingDataBase\r
+ IN OUT LIST_ENTRY *MappingDataBase\r
)\r
{\r
- LIST_ENTRY *OverrideItemListIndex;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ LIST_ENTRY *OverrideItemListIndex;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
\r
if (MappingDataBase == NULL) {\r
return EFI_INVALID_PARAMETER;\r
\r
OverrideItemListIndex = GetFirstNode (MappingDataBase);\r
while (!IsNull (MappingDataBase, OverrideItemListIndex)) {\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
//\r
// Free PLATFORM_OVERRIDE_ITEM.ControllerDevicePath[]\r
//\r
- if (OverrideItem->ControllerDevicePath != NULL){\r
+ if (OverrideItem->ControllerDevicePath != NULL) {\r
FreePool (OverrideItem->ControllerDevicePath);\r
}\r
\r
//\r
// Free DRIVER_IMAGE_INFO.DriverImagePath[]\r
//\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
if (DriverImageInfo->DriverImagePath != NULL) {\r
- FreePool(DriverImageInfo->DriverImagePath);\r
+ FreePool (DriverImageInfo->DriverImagePath);\r
}\r
+\r
//\r
// Free DRIVER_IMAGE_INFO itself\r
//\r
RemoveEntryList (&DriverImageInfo->Link);\r
FreePool (DriverImageInfo);\r
}\r
+\r
//\r
// Free PLATFORM_OVERRIDE_ITEM itself\r
//\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Create the mapping database according to variable.\r
\r
EFI_STATUS\r
EFIAPI\r
InitOverridesMapping (\r
- OUT LIST_ENTRY *MappingDataBase\r
+ OUT LIST_ENTRY *MappingDataBase\r
)\r
{\r
- UINTN BufferSize;\r
- VOID *VariableBuffer;\r
- UINT8 *VariableIndex;\r
- UINTN VariableNum;\r
- CHAR16 OverrideVariableName[40];\r
- UINT32 NotEnd;\r
- UINT32 DriverNumber;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- BOOLEAN Corrupted;\r
- UINT32 Signature;\r
- EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath;\r
- EFI_DEVICE_PATH_PROTOCOL *DriverDevicePath;\r
- UINTN Index;\r
+ UINTN BufferSize;\r
+ VOID *VariableBuffer;\r
+ UINT8 *VariableIndex;\r
+ UINTN VariableNum;\r
+ CHAR16 OverrideVariableName[40];\r
+ UINT32 NotEnd;\r
+ UINT32 DriverNumber;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ BOOLEAN Corrupted;\r
+ UINT32 Signature;\r
+ EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL *DriverDevicePath;\r
+ UINTN Index;\r
\r
if (MappingDataBase == NULL) {\r
return EFI_INVALID_PARAMETER;\r
// Check the environment variable(s) that contain the override mappings .\r
//\r
VariableBuffer = GetVariableAndSize (L"PlatDriOver", &gEfiCallerIdGuid, &BufferSize);\r
- ASSERT ((UINTN) VariableBuffer % sizeof(UINTN) == 0);\r
+ ASSERT ((UINTN)VariableBuffer % sizeof (UINTN) == 0);\r
if (VariableBuffer == NULL) {\r
return EFI_NOT_FOUND;\r
}\r
// Traverse all variables.\r
//\r
VariableNum = 1;\r
- Corrupted = FALSE;\r
- NotEnd = 0;\r
+ Corrupted = FALSE;\r
+ NotEnd = 0;\r
do {\r
VariableIndex = VariableBuffer;\r
- if (VariableIndex + sizeof (UINT32) > (UINT8 *) VariableBuffer + BufferSize) {\r
+ if (VariableIndex + sizeof (UINT32) > (UINT8 *)VariableBuffer + BufferSize) {\r
Corrupted = TRUE;\r
} else {\r
//\r
// End flag\r
//\r
- NotEnd = *(UINT32*) VariableIndex;\r
+ NotEnd = *(UINT32 *)VariableIndex;\r
}\r
+\r
//\r
// Traverse the entries containing the mapping that Controller Device Path\r
// to a set of Driver Device Paths within this variable.\r
//\r
// Check signature of this entry\r
//\r
- if (VariableIndex + sizeof (UINT32) > (UINT8 *) VariableBuffer + BufferSize) {\r
+ if (VariableIndex + sizeof (UINT32) > (UINT8 *)VariableBuffer + BufferSize) {\r
Corrupted = TRUE;\r
break;\r
}\r
- Signature = *(UINT32 *) VariableIndex;\r
+\r
+ Signature = *(UINT32 *)VariableIndex;\r
if (Signature != PLATFORM_OVERRIDE_ITEM_SIGNATURE) {\r
Corrupted = TRUE;\r
break;\r
}\r
+\r
//\r
// Create PLATFORM_OVERRIDE_ITEM for this mapping\r
//\r
//\r
// Get DriverNum\r
//\r
- if (VariableIndex + sizeof (UINT32) >= (UINT8 *) VariableBuffer + BufferSize) {\r
+ if (VariableIndex + sizeof (UINT32) >= (UINT8 *)VariableBuffer + BufferSize) {\r
Corrupted = TRUE;\r
break;\r
}\r
- DriverNumber = *(UINT32*) VariableIndex;\r
+\r
+ DriverNumber = *(UINT32 *)VariableIndex;\r
OverrideItem->DriverInfoNum = DriverNumber;\r
- VariableIndex = VariableIndex + sizeof (UINT32);\r
+ VariableIndex = VariableIndex + sizeof (UINT32);\r
//\r
// Get ControllerDevicePath[]\r
//\r
- ControllerDevicePath = (EFI_DEVICE_PATH_PROTOCOL *) VariableIndex;\r
+ ControllerDevicePath = (EFI_DEVICE_PATH_PROTOCOL *)VariableIndex;\r
OverrideItem->ControllerDevicePath = DuplicateDevicePath (ControllerDevicePath);\r
- VariableIndex = VariableIndex + GetDevicePathSize (ControllerDevicePath);\r
+ VariableIndex = VariableIndex + GetDevicePathSize (ControllerDevicePath);\r
//\r
// Align the VariableIndex since the controller device path may not be aligned, refer to the SaveOverridesMapping()\r
//\r
- VariableIndex += ((sizeof(UINT32) - ((UINTN) (VariableIndex))) & (sizeof(UINT32) - 1));\r
+ VariableIndex += ((sizeof (UINT32) - ((UINTN)(VariableIndex))) & (sizeof (UINT32) - 1));\r
//\r
// Check buffer overflow.\r
//\r
- if ((OverrideItem->ControllerDevicePath == NULL) || (VariableIndex < (UINT8 *) ControllerDevicePath) ||\r
- (VariableIndex > (UINT8 *) VariableBuffer + BufferSize)) {\r
+ if ((OverrideItem->ControllerDevicePath == NULL) || (VariableIndex < (UINT8 *)ControllerDevicePath) ||\r
+ (VariableIndex > (UINT8 *)VariableBuffer + BufferSize))\r
+ {\r
Corrupted = TRUE;\r
break;\r
}\r
ASSERT (DriverImageInfo != NULL);\r
DriverImageInfo->Signature = DRIVER_IMAGE_INFO_SIGNATURE;\r
\r
- DriverDevicePath = (EFI_DEVICE_PATH_PROTOCOL *) VariableIndex;\r
+ DriverDevicePath = (EFI_DEVICE_PATH_PROTOCOL *)VariableIndex;\r
DriverImageInfo->DriverImagePath = DuplicateDevicePath (DriverDevicePath);\r
- VariableIndex = VariableIndex + GetDevicePathSize (DriverDevicePath);\r
+ VariableIndex = VariableIndex + GetDevicePathSize (DriverDevicePath);\r
//\r
// Align the VariableIndex since the driver image device path may not be aligned, refer to the SaveOverridesMapping()\r
//\r
- VariableIndex += ((sizeof(UINT32) - ((UINTN) (VariableIndex))) & (sizeof(UINT32) - 1));\r
+ VariableIndex += ((sizeof (UINT32) - ((UINTN)(VariableIndex))) & (sizeof (UINT32) - 1));\r
\r
InsertTailList (&OverrideItem->DriverInfoList, &DriverImageInfo->Link);\r
\r
//\r
// Check buffer overflow\r
//\r
- if ((DriverImageInfo->DriverImagePath == NULL) || (VariableIndex < (UINT8 *) DriverDevicePath) ||\r
- (VariableIndex > (UINT8 *) VariableBuffer + BufferSize)) {\r
+ if ((DriverImageInfo->DriverImagePath == NULL) || (VariableIndex < (UINT8 *)DriverDevicePath) ||\r
+ (VariableIndex > (UINT8 *)VariableBuffer + BufferSize))\r
+ {\r
Corrupted = TRUE;\r
break;\r
}\r
}\r
+\r
InsertTailList (MappingDataBase, &OverrideItem->Link);\r
if (Corrupted) {\r
break;\r
if (NotEnd != 0) {\r
UnicodeSPrint (OverrideVariableName, sizeof (OverrideVariableName), L"PlatDriOver%d", VariableNum++);\r
VariableBuffer = GetVariableAndSize (OverrideVariableName, &gEfiCallerIdGuid, &BufferSize);\r
- ASSERT ((UINTN) VariableBuffer % sizeof(UINTN) == 0);\r
+ ASSERT ((UINTN)VariableBuffer % sizeof (UINTN) == 0);\r
if (VariableBuffer == NULL) {\r
FreeMappingDatabase (MappingDataBase);\r
return EFI_VOLUME_CORRUPTED;\r
}\r
}\r
-\r
} while (NotEnd != 0);\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Calculate the needed size in NV variable for recording a specific PLATFORM_OVERRIDE_ITEM info.\r
\r
UINTN\r
EFIAPI\r
GetOneItemNeededSize (\r
- IN LIST_ENTRY *OverrideItemListIndex\r
+ IN LIST_ENTRY *OverrideItemListIndex\r
)\r
{\r
- UINTN NeededSize;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- UINTN DevicePathSize;\r
-\r
- NeededSize = 0;\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
- NeededSize += sizeof (UINT32); //UINT32 SIGNATURE;\r
- NeededSize += sizeof (UINT32); //UINT32 DriverNum;\r
+ UINTN NeededSize;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ UINTN DevicePathSize;\r
+\r
+ NeededSize = 0;\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ NeededSize += sizeof (UINT32); // UINT32 SIGNATURE;\r
+ NeededSize += sizeof (UINT32); // UINT32 DriverNum;\r
DevicePathSize = GetDevicePathSize (OverrideItem->ControllerDevicePath);\r
- NeededSize += DevicePathSize; // ControllerDevicePath\r
+ NeededSize += DevicePathSize; // ControllerDevicePath\r
//\r
// Align the controller device path\r
//\r
- NeededSize += ((sizeof(UINT32) - DevicePathSize) & (sizeof(UINT32) - 1));\r
+ NeededSize += ((sizeof (UINT32) - DevicePathSize) & (sizeof (UINT32) - 1));\r
//\r
// Traverse the Driver Info List of this Override Item\r
//\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
- DevicePathSize = GetDevicePathSize (DriverImageInfo->DriverImagePath);\r
- NeededSize += DevicePathSize; //DriverDevicePath\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DevicePathSize = GetDevicePathSize (DriverImageInfo->DriverImagePath);\r
+ NeededSize += DevicePathSize; // DriverDevicePath\r
//\r
// Align the driver image device path\r
//\r
- NeededSize += ((sizeof(UINT32) - DevicePathSize) & (sizeof(UINT32) - 1));\r
+ NeededSize += ((sizeof (UINT32) - DevicePathSize) & (sizeof (UINT32) - 1));\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
}\r
\r
VOID\r
)\r
{\r
- EFI_STATUS Status;\r
- VOID *VariableBuffer;\r
- UINTN VariableNum;\r
- UINTN BufferSize;\r
- UINTN Index;\r
- CHAR16 OverrideVariableName[40];\r
+ EFI_STATUS Status;\r
+ VOID *VariableBuffer;\r
+ UINTN VariableNum;\r
+ UINTN BufferSize;\r
+ UINTN Index;\r
+ CHAR16 OverrideVariableName[40];\r
\r
//\r
// Get environment variable(s) number\r
//\r
- VariableNum = 0;\r
+ VariableNum = 0;\r
VariableBuffer = GetVariableAndSize (L"PlatDriOver", &gEfiCallerIdGuid, &BufferSize);\r
VariableNum++;\r
if (VariableBuffer == NULL) {\r
return EFI_NOT_FOUND;\r
}\r
+\r
//\r
// Check NotEnd to get all PlatDriOverX variable(s)\r
//\r
- while ((VariableBuffer != NULL) && ((*(UINT32*)VariableBuffer) != 0)) {\r
+ while ((VariableBuffer != NULL) && ((*(UINT32 *)VariableBuffer) != 0)) {\r
FreePool (VariableBuffer);\r
UnicodeSPrint (OverrideVariableName, sizeof (OverrideVariableName), L"PlatDriOver%d", VariableNum);\r
VariableBuffer = GetVariableAndSize (OverrideVariableName, &gEfiCallerIdGuid, &BufferSize);\r
);\r
ASSERT (!EFI_ERROR (Status));\r
}\r
+\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Save the memory mapping database into NV environment variable(s).\r
\r
EFI_STATUS\r
EFIAPI\r
SaveOverridesMapping (\r
- IN LIST_ENTRY *MappingDataBase\r
+ IN LIST_ENTRY *MappingDataBase\r
)\r
{\r
- EFI_STATUS Status;\r
- VOID *VariableBuffer;\r
- UINT8 *VariableIndex;\r
- UINTN NumIndex;\r
- CHAR16 OverrideVariableName[40];\r
- UINT32 NotEnd;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- LIST_ENTRY *OverrideItemListIndex;\r
- LIST_ENTRY *ItemIndex;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- UINTN VariableNeededSize;\r
- UINT64 MaximumVariableStorageSize;\r
- UINT64 RemainingVariableStorageSize;\r
- UINT64 MaximumVariableSize;\r
- UINTN OneItemNeededSize;\r
+ EFI_STATUS Status;\r
+ VOID *VariableBuffer;\r
+ UINT8 *VariableIndex;\r
+ UINTN NumIndex;\r
+ CHAR16 OverrideVariableName[40];\r
+ UINT32 NotEnd;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ LIST_ENTRY *OverrideItemListIndex;\r
+ LIST_ENTRY *ItemIndex;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ UINTN VariableNeededSize;\r
+ UINT64 MaximumVariableStorageSize;\r
+ UINT64 RemainingVariableStorageSize;\r
+ UINT64 MaximumVariableSize;\r
+ UINTN OneItemNeededSize;\r
\r
if (MappingDataBase == NULL) {\r
return EFI_INVALID_PARAMETER;\r
// Get the the maximum size of an individual EFI variable in current system\r
//\r
gRT->QueryVariableInfo (\r
- EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE,\r
- &MaximumVariableStorageSize,\r
- &RemainingVariableStorageSize,\r
- &MaximumVariableSize\r
- );\r
+ EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_NON_VOLATILE,\r
+ &MaximumVariableStorageSize,\r
+ &RemainingVariableStorageSize,\r
+ &MaximumVariableSize\r
+ );\r
\r
- NumIndex = 0;\r
+ NumIndex = 0;\r
OverrideItemListIndex = GetFirstNode (MappingDataBase);\r
while (!IsNull (MappingDataBase, OverrideItemListIndex)) {\r
//\r
// but can contain mapping info as much as possible\r
//\r
VariableNeededSize = sizeof (UINT32); // NotEnd;\r
- ItemIndex = OverrideItemListIndex;\r
- NotEnd = FALSE;\r
+ ItemIndex = OverrideItemListIndex;\r
+ NotEnd = FALSE;\r
//\r
// Traverse all PLATFORM_OVERRIDE_ITEMs and get the total size.\r
//\r
OneItemNeededSize +\r
StrSize (L"PlatDriOver ")\r
) >= MaximumVariableSize\r
- ) {\r
+ )\r
+ {\r
NotEnd = TRUE;\r
break;\r
}\r
\r
VariableNeededSize += OneItemNeededSize;\r
- ItemIndex = GetNextNode (MappingDataBase, ItemIndex);\r
+ ItemIndex = GetNextNode (MappingDataBase, ItemIndex);\r
}\r
\r
if (NotEnd != 0) {\r
//\r
VariableBuffer = AllocateZeroPool (VariableNeededSize);\r
ASSERT (VariableBuffer != NULL);\r
- ASSERT ((UINTN) VariableBuffer % sizeof(UINTN) == 0);\r
+ ASSERT ((UINTN)VariableBuffer % sizeof (UINTN) == 0);\r
\r
//\r
// Fill the variable buffer according to MappingDataBase\r
//\r
- VariableIndex = VariableBuffer;\r
- *(UINT32 *) VariableIndex = NotEnd;\r
- VariableIndex += sizeof (UINT32); // pass NotEnd\r
+ VariableIndex = VariableBuffer;\r
+ *(UINT32 *)VariableIndex = NotEnd;\r
+ VariableIndex += sizeof (UINT32); // pass NotEnd\r
//\r
// ItemIndex points to the next PLATFORM_OVERRIDE_ITEM which is not covered by VariableNeededSize\r
//\r
- while (OverrideItemListIndex != ItemIndex){\r
- *(UINT32 *) VariableIndex = PLATFORM_OVERRIDE_ITEM_SIGNATURE;\r
- VariableIndex += sizeof (UINT32); // pass SIGNATURE\r
+ while (OverrideItemListIndex != ItemIndex) {\r
+ *(UINT32 *)VariableIndex = PLATFORM_OVERRIDE_ITEM_SIGNATURE;\r
+ VariableIndex += sizeof (UINT32); // pass SIGNATURE\r
\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
- *(UINT32 *) VariableIndex = OverrideItem->DriverInfoNum;\r
- VariableIndex += sizeof (UINT32); // pass DriverNum\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ *(UINT32 *)VariableIndex = OverrideItem->DriverInfoNum;\r
+ VariableIndex += sizeof (UINT32); // pass DriverNum\r
\r
CopyMem (VariableIndex, OverrideItem->ControllerDevicePath, GetDevicePathSize (OverrideItem->ControllerDevicePath));\r
VariableIndex += GetDevicePathSize (OverrideItem->ControllerDevicePath); // pass ControllerDevicePath\r
//\r
// Align the VariableIndex since the controller device path may not be aligned\r
//\r
- VariableIndex += ((sizeof(UINT32) - ((UINTN) (VariableIndex))) & (sizeof(UINT32) - 1));\r
+ VariableIndex += ((sizeof (UINT32) - ((UINTN)(VariableIndex))) & (sizeof (UINT32) - 1));\r
//\r
// Save the Driver Info List of this PLATFORM_OVERRIDE_ITEM\r
//\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
CopyMem (VariableIndex, DriverImageInfo->DriverImagePath, GetDevicePathSize (DriverImageInfo->DriverImagePath));\r
VariableIndex += GetDevicePathSize (DriverImageInfo->DriverImagePath); // pass DriverImageDevicePath\r
//\r
// Align the VariableIndex since the driver image device path may not be aligned\r
//\r
- VariableIndex += ((sizeof(UINT32) - ((UINTN) (VariableIndex))) & (sizeof(UINT32) - 1));\r
+ VariableIndex += ((sizeof (UINT32) - ((UINTN)(VariableIndex))) & (sizeof (UINT32) - 1));\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
}\r
\r
if (NumIndex == 0) {\r
UnicodeSPrint (OverrideVariableName, sizeof (OverrideVariableName), L"PlatDriOver");\r
} else {\r
- UnicodeSPrint (OverrideVariableName, sizeof (OverrideVariableName), L"PlatDriOver%d", NumIndex );\r
+ UnicodeSPrint (OverrideVariableName, sizeof (OverrideVariableName), L"PlatDriOver%d", NumIndex);\r
}\r
\r
Status = gRT->SetVariable (\r
//\r
DeleteOverridesVariables ();\r
}\r
+\r
return Status;\r
}\r
\r
- NumIndex ++;\r
+ NumIndex++;\r
}\r
\r
return EFI_SUCCESS;\r
EFI_DRIVER_BINDING_PROTOCOL *\r
EFIAPI\r
GetBindingProtocolFromImageHandle (\r
- IN EFI_HANDLE ImageHandle,\r
- OUT EFI_HANDLE *BindingHandle\r
+ IN EFI_HANDLE ImageHandle,\r
+ OUT EFI_HANDLE *BindingHandle\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN Index;\r
- UINTN DriverBindingHandleCount;\r
- EFI_HANDLE *DriverBindingHandleBuffer;\r
- EFI_DRIVER_BINDING_PROTOCOL *DriverBindingInterface;\r
+ EFI_STATUS Status;\r
+ UINTN Index;\r
+ UINTN DriverBindingHandleCount;\r
+ EFI_HANDLE *DriverBindingHandleBuffer;\r
+ EFI_DRIVER_BINDING_PROTOCOL *DriverBindingInterface;\r
\r
- if (BindingHandle == NULL || ImageHandle == NULL) {\r
+ if ((BindingHandle == NULL) || (ImageHandle == NULL)) {\r
return NULL;\r
}\r
+\r
//\r
// Get all drivers which support driver binding protocol\r
//\r
- DriverBindingHandleCount = 0;\r
- Status = gBS->LocateHandleBuffer (\r
- ByProtocol,\r
- &gEfiDriverBindingProtocolGuid,\r
- NULL,\r
- &DriverBindingHandleCount,\r
- &DriverBindingHandleBuffer\r
- );\r
+ DriverBindingHandleCount = 0;\r
+ Status = gBS->LocateHandleBuffer (\r
+ ByProtocol,\r
+ &gEfiDriverBindingProtocolGuid,\r
+ NULL,\r
+ &DriverBindingHandleCount,\r
+ &DriverBindingHandleBuffer\r
+ );\r
if (EFI_ERROR (Status) || (DriverBindingHandleCount == 0)) {\r
return NULL;\r
}\r
\r
for (Index = 0; Index < DriverBindingHandleCount; Index++) {\r
DriverBindingInterface = NULL;\r
- Status = gBS->OpenProtocol (\r
- DriverBindingHandleBuffer[Index],\r
- &gEfiDriverBindingProtocolGuid,\r
- (VOID **) &DriverBindingInterface,\r
- NULL,\r
- NULL,\r
- EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
- );\r
+ Status = gBS->OpenProtocol (\r
+ DriverBindingHandleBuffer[Index],\r
+ &gEfiDriverBindingProtocolGuid,\r
+ (VOID **)&DriverBindingInterface,\r
+ NULL,\r
+ NULL,\r
+ EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
+ );\r
if (EFI_ERROR (Status)) {\r
continue;\r
}\r
VOID\r
)\r
{\r
- EFI_TPL Tpl;\r
+ EFI_TPL Tpl;\r
\r
Tpl = gBS->RaiseTPL (TPL_HIGH_LEVEL);\r
gBS->RestoreTPL (Tpl);\r
return Tpl;\r
}\r
\r
-\r
/**\r
Retrieves the image handle of the platform override driver for a controller in\r
the system from the memory mapping database.\r
EFI_STATUS\r
EFIAPI\r
GetDriverFromMapping (\r
- IN EFI_HANDLE ControllerHandle,\r
- IN OUT EFI_HANDLE *DriverImageHandle,\r
- IN LIST_ENTRY *MappingDataBase,\r
- IN EFI_HANDLE CallerImageHandle\r
+ IN EFI_HANDLE ControllerHandle,\r
+ IN OUT EFI_HANDLE *DriverImageHandle,\r
+ IN LIST_ENTRY *MappingDataBase,\r
+ IN EFI_HANDLE CallerImageHandle\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath;\r
- BOOLEAN ControllerFound;\r
- BOOLEAN ImageFound;\r
- EFI_HANDLE *ImageHandleBuffer;\r
- UINTN ImageHandleCount;\r
- UINTN Index;\r
- EFI_DRIVER_BINDING_PROTOCOL *DriverBinding;\r
- EFI_HANDLE DriverBindingHandle;\r
- BOOLEAN FoundLastReturned;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- LIST_ENTRY *OverrideItemListIndex;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- EFI_DEVICE_PATH_PROTOCOL *TempDriverImagePath;\r
- EFI_HANDLE ImageHandle;\r
- EFI_HANDLE Handle;\r
- EFI_DEVICE_PATH_PROTOCOL *LoadedImageDevicePath;\r
+ EFI_STATUS Status;\r
+ EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath;\r
+ BOOLEAN ControllerFound;\r
+ BOOLEAN ImageFound;\r
+ EFI_HANDLE *ImageHandleBuffer;\r
+ UINTN ImageHandleCount;\r
+ UINTN Index;\r
+ EFI_DRIVER_BINDING_PROTOCOL *DriverBinding;\r
+ EFI_HANDLE DriverBindingHandle;\r
+ BOOLEAN FoundLastReturned;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ LIST_ENTRY *OverrideItemListIndex;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ EFI_DEVICE_PATH_PROTOCOL *TempDriverImagePath;\r
+ EFI_HANDLE ImageHandle;\r
+ EFI_HANDLE Handle;\r
+ EFI_DEVICE_PATH_PROTOCOL *LoadedImageDevicePath;\r
EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL *BusSpecificDriverOverride;\r
- UINTN DevicePathSize;\r
+ UINTN DevicePathSize;\r
\r
//\r
// Check that ControllerHandle is a valid handle\r
if (ControllerHandle == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
//\r
// Get the device path of ControllerHandle\r
//\r
Status = gBS->HandleProtocol (\r
ControllerHandle,\r
&gEfiDevicePathProtocolGuid,\r
- (VOID **) &ControllerDevicePath\r
+ (VOID **)&ControllerDevicePath\r
);\r
- if (EFI_ERROR (Status) || ControllerDevicePath == NULL) {\r
+ if (EFI_ERROR (Status) || (ControllerDevicePath == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
//\r
// Search ControllerDevicePath in MappingDataBase\r
//\r
- OverrideItem = NULL;\r
+ OverrideItem = NULL;\r
ControllerFound = FALSE;\r
- DevicePathSize = GetDevicePathSize (ControllerDevicePath);\r
+ DevicePathSize = GetDevicePathSize (ControllerDevicePath);\r
\r
OverrideItemListIndex = GetFirstNode (MappingDataBase);\r
while (!IsNull (MappingDataBase, OverrideItemListIndex)) {\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
if (DevicePathSize == GetDevicePathSize (OverrideItem->ControllerDevicePath)) {\r
if (CompareMem (\r
ControllerDevicePath,\r
OverrideItem->ControllerDevicePath,\r
DevicePathSize\r
) == 0\r
- ) {\r
+ )\r
+ {\r
ControllerFound = TRUE;\r
break;\r
}\r
}\r
+\r
OverrideItemListIndex = GetNextNode (MappingDataBase, OverrideItemListIndex);\r
}\r
\r
if (!ControllerFound) {\r
return EFI_NOT_FOUND;\r
}\r
+\r
//\r
// Passing in a pointer to NULL, will return the first driver device path for ControllerHandle.\r
// Check whether the driverImagePath is not a device path that was returned on a previous call to GetDriverPath().\r
return EFI_INVALID_PARAMETER;\r
}\r
}\r
+\r
//\r
// The GetDriverPath() may be called recursively, because it use ConnectDevicePath() internally,\r
// so should check whether there is a dead loop.\r
//\r
return EFI_UNSUPPORTED;\r
}\r
+\r
PushDevPathStack (OverrideItem->ControllerDevicePath);\r
\r
//\r
//\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
if (DriverImageInfo->ImageHandle == NULL) {\r
//\r
// Skip if the image is unloadable or unstartable\r
FreePool (DriverImageInfo->DriverImagePath);\r
DriverImageInfo->DriverImagePath = TempDriverImagePath;\r
}\r
+\r
//\r
// Get all Loaded Image protocol to check whether the driver image has been loaded and started\r
//\r
- ImageFound = FALSE;\r
- ImageHandleCount = 0;\r
- Status = gBS->LocateHandleBuffer (\r
- ByProtocol,\r
- &gEfiLoadedImageProtocolGuid,\r
- NULL,\r
- &ImageHandleCount,\r
- &ImageHandleBuffer\r
- );\r
+ ImageFound = FALSE;\r
+ ImageHandleCount = 0;\r
+ Status = gBS->LocateHandleBuffer (\r
+ ByProtocol,\r
+ &gEfiLoadedImageProtocolGuid,\r
+ NULL,\r
+ &ImageHandleCount,\r
+ &ImageHandleBuffer\r
+ );\r
if (EFI_ERROR (Status) || (ImageHandleCount == 0)) {\r
return EFI_NOT_FOUND;\r
}\r
\r
- for(Index = 0; Index < ImageHandleCount; Index ++) {\r
+ for (Index = 0; Index < ImageHandleCount; Index++) {\r
//\r
// Get the EFI Loaded Image Device Path Protocol\r
//\r
LoadedImageDevicePath = NULL;\r
- Status = gBS->HandleProtocol (\r
- ImageHandleBuffer[Index],\r
- &gEfiLoadedImageDevicePathProtocolGuid,\r
- (VOID **) &LoadedImageDevicePath\r
- );\r
+ Status = gBS->HandleProtocol (\r
+ ImageHandleBuffer[Index],\r
+ &gEfiLoadedImageDevicePathProtocolGuid,\r
+ (VOID **)&LoadedImageDevicePath\r
+ );\r
if (EFI_ERROR (Status)) {\r
//\r
// Maybe not all EFI_LOADED_IMAGE_DEVICE_PATH_PROTOCOL existed.\r
LoadedImageDevicePath,\r
GetDevicePathSize (LoadedImageDevicePath)\r
) == 0\r
- ) {\r
+ )\r
+ {\r
ImageFound = TRUE;\r
break;\r
}\r
// Driver binding handle may be different with its driver's Image Handle.\r
//\r
DriverBindingHandle = NULL;\r
- DriverBinding = GetBindingProtocolFromImageHandle (\r
- ImageHandleBuffer[Index],\r
- &DriverBindingHandle\r
- );\r
+ DriverBinding = GetBindingProtocolFromImageHandle (\r
+ ImageHandleBuffer[Index],\r
+ &DriverBindingHandle\r
+ );\r
ASSERT (DriverBinding != NULL);\r
DriverImageInfo->ImageHandle = ImageHandleBuffer[Index];\r
- } else if (GetCurrentTpl() <= TPL_CALLBACK){\r
+ } else if (GetCurrentTpl () <= TPL_CALLBACK) {\r
//\r
// The driver image has not been loaded and started. Try to load and start it now.\r
// Try to connect all device in the driver image path.\r
//\r
// Get the Bus Specific Driver Override Protocol instance on the Controller Handle\r
//\r
- Status = gBS->HandleProtocol(\r
+ Status = gBS->HandleProtocol (\r
Handle,\r
&gEfiBusSpecificDriverOverrideProtocolGuid,\r
- (VOID **) &BusSpecificDriverOverride\r
+ (VOID **)&BusSpecificDriverOverride\r
);\r
if (!EFI_ERROR (Status) && (BusSpecificDriverOverride != NULL)) {\r
ImageHandle = NULL;\r
- Status = BusSpecificDriverOverride->GetDriver (\r
- BusSpecificDriverOverride,\r
- &ImageHandle\r
- );\r
+ Status = BusSpecificDriverOverride->GetDriver (\r
+ BusSpecificDriverOverride,\r
+ &ImageHandle\r
+ );\r
if (!EFI_ERROR (Status)) {\r
//\r
// Find its related driver binding protocol\r
// Driver binding handle may be different with its driver's Image handle\r
//\r
DriverBindingHandle = NULL;\r
- DriverBinding = GetBindingProtocolFromImageHandle (\r
- ImageHandle,\r
- &DriverBindingHandle\r
- );\r
+ DriverBinding = GetBindingProtocolFromImageHandle (\r
+ ImageHandle,\r
+ &DriverBindingHandle\r
+ );\r
ASSERT (DriverBinding != NULL);\r
DriverImageInfo->ImageHandle = ImageHandle;\r
}\r
}\r
+\r
//\r
// Skip if any device cannot be connected now, future passes through GetDriver() may be able to load that driver.\r
// Only file path media or FwVol Device Path Node remain if all device is connected\r
gBS->LocateDevicePath (&gEfiDevicePathProtocolGuid, &TempDriverImagePath, &Handle);\r
if (((DevicePathType (TempDriverImagePath) == MEDIA_DEVICE_PATH) &&\r
(DevicePathSubType (TempDriverImagePath) == MEDIA_FILEPATH_DP)) ||\r
- (EfiGetNameGuidFromFwVolDevicePathNode ((MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *) TempDriverImagePath) != NULL)\r
- ) {\r
+ (EfiGetNameGuidFromFwVolDevicePathNode ((MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *)TempDriverImagePath) != NULL)\r
+ )\r
+ {\r
//\r
// Try to load the driver\r
//\r
TempDriverImagePath = DriverImageInfo->DriverImagePath;\r
- Status = gBS->LoadImage (\r
- FALSE,\r
- CallerImageHandle,\r
- TempDriverImagePath,\r
- NULL,\r
- 0,\r
- &ImageHandle\r
- );\r
+ Status = gBS->LoadImage (\r
+ FALSE,\r
+ CallerImageHandle,\r
+ TempDriverImagePath,\r
+ NULL,\r
+ 0,\r
+ &ImageHandle\r
+ );\r
if (!EFI_ERROR (Status)) {\r
//\r
// Try to start the driver\r
//\r
Status = gBS->StartImage (ImageHandle, NULL, NULL);\r
- if (EFI_ERROR (Status)){\r
+ if (EFI_ERROR (Status)) {\r
DriverImageInfo->UnStartable = TRUE;\r
DriverImageInfo->ImageHandle = NULL;\r
} else {\r
// Driver binding handle may be different with its driver's Image handle\r
//\r
DriverBindingHandle = NULL;\r
- DriverBinding = GetBindingProtocolFromImageHandle (\r
- ImageHandle,\r
- &DriverBindingHandle\r
- );\r
+ DriverBinding = GetBindingProtocolFromImageHandle (\r
+ ImageHandle,\r
+ &DriverBindingHandle\r
+ );\r
ASSERT (DriverBinding != NULL);\r
DriverImageInfo->ImageHandle = ImageHandle;\r
}\r
if (Status == EFI_SECURITY_VIOLATION) {\r
gBS->UnloadImage (ImageHandle);\r
}\r
- DriverImageInfo->UnLoadable = TRUE;\r
+\r
+ DriverImageInfo->UnLoadable = TRUE;\r
DriverImageInfo->ImageHandle = NULL;\r
}\r
}\r
}\r
+\r
FreePool (ImageHandleBuffer);\r
}\r
}\r
+\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
}\r
+\r
//\r
// Finish try to load and start the override driver of a controller, popup the controller's device path\r
//\r
//\r
// return the DriverImageHandle for ControllerHandle\r
//\r
- FoundLastReturned = FALSE;\r
+ FoundLastReturned = FALSE;\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
if (DriverImageInfo->ImageHandle != NULL) {\r
if ((*DriverImageHandle == NULL) || FoundLastReturned) {\r
//\r
// For both cases, we just return the image handle of this driver.\r
//\r
OverrideItem->LastReturnedImageHandle = DriverImageInfo->ImageHandle;\r
- *DriverImageHandle = DriverImageInfo->ImageHandle;\r
+ *DriverImageHandle = DriverImageInfo->ImageHandle;\r
return EFI_SUCCESS;\r
- } else if (*DriverImageHandle == DriverImageInfo->ImageHandle){\r
+ } else if (*DriverImageHandle == DriverImageInfo->ImageHandle) {\r
//\r
// We have found the previously returned driver.\r
//\r
FoundLastReturned = TRUE;\r
}\r
}\r
+\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
}\r
\r
return EFI_NOT_FOUND;\r
}\r
\r
-\r
/**\r
Check mapping database whether already has the mapping info which\r
records the input Controller to input DriverImage.\r
EFI_STATUS\r
EFIAPI\r
CheckMapping (\r
- IN EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath,\r
- IN EFI_DEVICE_PATH_PROTOCOL *DriverImageDevicePath OPTIONAL,\r
- IN LIST_ENTRY *MappingDataBase,\r
- OUT UINT32 *DriverInfoNum OPTIONAL,\r
- OUT UINT32 *DriverImageNO OPTIONAL\r
+ IN EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath,\r
+ IN EFI_DEVICE_PATH_PROTOCOL *DriverImageDevicePath OPTIONAL,\r
+ IN LIST_ENTRY *MappingDataBase,\r
+ OUT UINT32 *DriverInfoNum OPTIONAL,\r
+ OUT UINT32 *DriverImageNO OPTIONAL\r
)\r
{\r
- LIST_ENTRY *OverrideItemListIndex;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- BOOLEAN Found;\r
- UINT32 ImageNO;\r
- UINTN DevicePathSize;\r
+ LIST_ENTRY *OverrideItemListIndex;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ BOOLEAN Found;\r
+ UINT32 ImageNO;\r
+ UINTN DevicePathSize;\r
\r
if (ControllerDevicePath == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
if (MappingDataBase == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
//\r
// Search ControllerDevicePath in MappingDataBase\r
//\r
- Found = FALSE;\r
- OverrideItem = NULL;\r
+ Found = FALSE;\r
+ OverrideItem = NULL;\r
OverrideItemListIndex = GetFirstNode (MappingDataBase);\r
while (!IsNull (MappingDataBase, OverrideItemListIndex)) {\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
DevicePathSize = GetDevicePathSize (ControllerDevicePath);\r
if (DevicePathSize == GetDevicePathSize (OverrideItem->ControllerDevicePath)) {\r
if (CompareMem (\r
OverrideItem->ControllerDevicePath,\r
DevicePathSize\r
) == 0\r
- ) {\r
+ )\r
+ {\r
Found = TRUE;\r
break;\r
}\r
}\r
+\r
OverrideItemListIndex = GetNextNode (MappingDataBase, OverrideItemListIndex);\r
}\r
\r
if (DriverImageDevicePath == NULL) {\r
return EFI_SUCCESS;\r
}\r
+\r
//\r
// return the DriverImageHandle for ControllerHandle\r
//\r
- ImageNO = 0;\r
- Found = FALSE;\r
+ ImageNO = 0;\r
+ Found = FALSE;\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
ImageNO++;\r
DevicePathSize = GetDevicePathSize (DriverImageDevicePath);\r
if (DevicePathSize == GetDevicePathSize (DriverImageInfo->DriverImagePath)) {\r
DriverImageInfo->DriverImagePath,\r
GetDevicePathSize (DriverImageInfo->DriverImagePath)\r
) == 0\r
- ) {\r
+ )\r
+ {\r
Found = TRUE;\r
break;\r
}\r
}\r
+\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
}\r
\r
if (DriverImageNO != NULL) {\r
*DriverImageNO = ImageNO;\r
}\r
+\r
return EFI_SUCCESS;\r
}\r
}\r
\r
-\r
/**\r
Insert a driver image as a controller's override driver into the mapping database.\r
The driver image's order number is indicated by DriverImageNO.\r
EFI_STATUS\r
EFIAPI\r
InsertDriverImage (\r
- IN EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath,\r
- IN EFI_DEVICE_PATH_PROTOCOL *DriverImageDevicePath,\r
- IN LIST_ENTRY *MappingDataBase,\r
- IN UINT32 DriverImageNO\r
+ IN EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath,\r
+ IN EFI_DEVICE_PATH_PROTOCOL *DriverImageDevicePath,\r
+ IN LIST_ENTRY *MappingDataBase,\r
+ IN UINT32 DriverImageNO\r
)\r
{\r
- EFI_STATUS Status;\r
- LIST_ENTRY *OverrideItemListIndex;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- BOOLEAN Found;\r
- UINT32 ImageNO;\r
- UINTN DevicePathSize;\r
+ EFI_STATUS Status;\r
+ LIST_ENTRY *OverrideItemListIndex;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ BOOLEAN Found;\r
+ UINT32 ImageNO;\r
+ UINTN DevicePathSize;\r
\r
if (ControllerDevicePath == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
if (DriverImageDevicePath == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
if (MappingDataBase == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
//\r
// Search the input ControllerDevicePath in MappingDataBase\r
//\r
- Found = FALSE;\r
- OverrideItem = NULL;\r
+ Found = FALSE;\r
+ OverrideItem = NULL;\r
OverrideItemListIndex = GetFirstNode (MappingDataBase);\r
while (!IsNull (MappingDataBase, OverrideItemListIndex)) {\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
DevicePathSize = GetDevicePathSize (ControllerDevicePath);\r
if (DevicePathSize == GetDevicePathSize (OverrideItem->ControllerDevicePath)) {\r
if (CompareMem (\r
OverrideItem->ControllerDevicePath,\r
DevicePathSize\r
) == 0\r
- ) {\r
+ )\r
+ {\r
Found = TRUE;\r
break;\r
}\r
}\r
+\r
OverrideItemListIndex = GetNextNode (MappingDataBase, OverrideItemListIndex);\r
}\r
+\r
//\r
// If cannot find, this is a new controller item\r
// Add the Controller related PLATFORM_OVERRIDE_ITEM structrue in mapping data base\r
if (!Found) {\r
OverrideItem = AllocateZeroPool (sizeof (PLATFORM_OVERRIDE_ITEM));\r
ASSERT (OverrideItem != NULL);\r
- OverrideItem->Signature = PLATFORM_OVERRIDE_ITEM_SIGNATURE;\r
+ OverrideItem->Signature = PLATFORM_OVERRIDE_ITEM_SIGNATURE;\r
OverrideItem->ControllerDevicePath = DuplicateDevicePath (ControllerDevicePath);\r
InitializeListHead (&OverrideItem->DriverInfoList);\r
InsertTailList (MappingDataBase, &OverrideItem->Link);\r
//\r
DriverImageInfo = AllocateZeroPool (sizeof (DRIVER_IMAGE_INFO));\r
ASSERT (DriverImageInfo != NULL);\r
- DriverImageInfo->Signature = DRIVER_IMAGE_INFO_SIGNATURE;\r
+ DriverImageInfo->Signature = DRIVER_IMAGE_INFO_SIGNATURE;\r
DriverImageInfo->DriverImagePath = DuplicateDevicePath (DriverImageDevicePath);\r
//\r
// Find the driver image wanted order location\r
//\r
- ImageNO = 0;\r
- Found = FALSE;\r
+ ImageNO = 0;\r
+ Found = FALSE;\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
if (ImageNO == (DriverImageNO - 1)) {\r
// find the wanted order location, insert it\r
//\r
InsertTailList (ImageInfoListIndex, &DriverImageInfo->Link);\r
- OverrideItem->DriverInfoNum ++;\r
+ OverrideItem->DriverInfoNum++;\r
Found = TRUE;\r
break;\r
}\r
+\r
ImageNO++;\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
}\r
// if not find the wanted order location, add it as last item of the controller mapping item\r
//\r
InsertTailList (&OverrideItem->DriverInfoList, &DriverImageInfo->Link);\r
- OverrideItem->DriverInfoNum ++;\r
+ OverrideItem->DriverInfoNum++;\r
}\r
\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Delete a controller's override driver from the mapping database.\r
\r
EFI_STATUS\r
EFIAPI\r
DeleteDriverImage (\r
- IN EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath,\r
- IN EFI_DEVICE_PATH_PROTOCOL *DriverImageDevicePath,\r
- IN LIST_ENTRY *MappingDataBase\r
+ IN EFI_DEVICE_PATH_PROTOCOL *ControllerDevicePath,\r
+ IN EFI_DEVICE_PATH_PROTOCOL *DriverImageDevicePath,\r
+ IN LIST_ENTRY *MappingDataBase\r
)\r
{\r
- EFI_STATUS Status;\r
- LIST_ENTRY *OverrideItemListIndex;\r
- PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
- LIST_ENTRY *ImageInfoListIndex;\r
- DRIVER_IMAGE_INFO *DriverImageInfo;\r
- BOOLEAN Found;\r
- UINTN DevicePathSize;\r
+ EFI_STATUS Status;\r
+ LIST_ENTRY *OverrideItemListIndex;\r
+ PLATFORM_OVERRIDE_ITEM *OverrideItem;\r
+ LIST_ENTRY *ImageInfoListIndex;\r
+ DRIVER_IMAGE_INFO *DriverImageInfo;\r
+ BOOLEAN Found;\r
+ UINTN DevicePathSize;\r
\r
if (ControllerDevicePath == NULL) {\r
return EFI_INVALID_PARAMETER;\r
//\r
// Search ControllerDevicePath in MappingDataBase\r
//\r
- Found = FALSE;\r
- OverrideItem = NULL;\r
+ Found = FALSE;\r
+ OverrideItem = NULL;\r
OverrideItemListIndex = GetFirstNode (MappingDataBase);\r
while (!IsNull (MappingDataBase, OverrideItemListIndex)) {\r
- OverrideItem = CR(OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
+ OverrideItem = CR (OverrideItemListIndex, PLATFORM_OVERRIDE_ITEM, Link, PLATFORM_OVERRIDE_ITEM_SIGNATURE);\r
DevicePathSize = GetDevicePathSize (ControllerDevicePath);\r
if (DevicePathSize == GetDevicePathSize (OverrideItem->ControllerDevicePath)) {\r
if (CompareMem (\r
OverrideItem->ControllerDevicePath,\r
DevicePathSize\r
) == 0\r
- ) {\r
+ )\r
+ {\r
Found = TRUE;\r
break;\r
}\r
}\r
+\r
OverrideItemListIndex = GetNextNode (MappingDataBase, OverrideItemListIndex);\r
}\r
\r
ASSERT (Found);\r
ASSERT (OverrideItem->DriverInfoNum != 0);\r
\r
- Found = FALSE;\r
+ Found = FALSE;\r
ImageInfoListIndex = GetFirstNode (&OverrideItem->DriverInfoList);\r
while (!IsNull (&OverrideItem->DriverInfoList, ImageInfoListIndex)) {\r
- DriverImageInfo = CR(ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
+ DriverImageInfo = CR (ImageInfoListIndex, DRIVER_IMAGE_INFO, Link, DRIVER_IMAGE_INFO_SIGNATURE);\r
ImageInfoListIndex = GetNextNode (&OverrideItem->DriverInfoList, ImageInfoListIndex);\r
if (DriverImageDevicePath != NULL) {\r
//\r
DriverImageInfo->DriverImagePath,\r
GetDevicePathSize (DriverImageInfo->DriverImagePath)\r
) == 0\r
- ) {\r
+ )\r
+ {\r
Found = TRUE;\r
- FreePool(DriverImageInfo->DriverImagePath);\r
+ FreePool (DriverImageInfo->DriverImagePath);\r
RemoveEntryList (&DriverImageInfo->Link);\r
- OverrideItem->DriverInfoNum --;\r
+ OverrideItem->DriverInfoNum--;\r
break;\r
}\r
}\r
// Remove all existing driver image info entries, so no break here.\r
//\r
Found = TRUE;\r
- FreePool(DriverImageInfo->DriverImagePath);\r
+ FreePool (DriverImageInfo->DriverImagePath);\r
RemoveEntryList (&DriverImageInfo->Link);\r
- OverrideItem->DriverInfoNum --;\r
+ OverrideItem->DriverInfoNum--;\r
}\r
}\r
\r
if (DriverImageDevicePath == NULL) {\r
ASSERT (OverrideItem->DriverInfoNum == 0);\r
}\r
+\r
//\r
// If Override Item has no driver image info entry, then delete this item.\r
//\r
if (OverrideItem->DriverInfoNum == 0) {\r
- FreePool(OverrideItem->ControllerDevicePath);\r
+ FreePool (OverrideItem->ControllerDevicePath);\r
RemoveEntryList (&OverrideItem->Link);\r
FreePool (OverrideItem);\r
}\r