X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdePkg%2FLibrary%2FUefiDevicePathLib%2FDevicePathFromText.c;h=1aaa968d6fb543b2d3b7458824e91db6706a4ea2;hb=2f88bd3a1296c522317f1c21377876de63de5be7;hp=ca912b4eb067a0873f295d36665d1d2c90b3f19b;hpb=6d9b9bbb6148831de2ca545994f31e27b3d4c675;p=mirror_edk2.git diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c b/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c index ca912b4eb0..1aaa968d6f 100644 --- a/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c +++ b/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c @@ -2,13 +2,7 @@ DevicePathFromText protocol as defined in the UEFI 2.0 specification. Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
-This program and the accompanying materials -are licensed and made available under the terms and conditions of the BSD License -which accompanies this distribution. The full text of the license may be found at -http://opensource.org/licenses/bsd-license.php - -THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -44,8 +38,8 @@ UefiDevicePathLibStrDuplicate ( **/ CHAR16 * GetParamByNodeName ( - IN CHAR16 *Str, - IN CHAR16 *NodeName + IN CHAR16 *Str, + IN CHAR16 *NodeName ) { CHAR16 *ParamStr; @@ -71,14 +65,16 @@ GetParamByNodeName ( // ParamStr++; ParameterLength = 0; - StrPointer = ParamStr; + StrPointer = ParamStr; while (!IS_NULL (*StrPointer)) { if (IS_RIGHT_PARENTH (*StrPointer)) { break; } + StrPointer++; ParameterLength++; } + if (IS_NULL (*StrPointer)) { // // ')' not found @@ -90,6 +86,7 @@ GetParamByNodeName ( if (ParamStr == NULL) { return NULL; } + // // Terminate the parameter string // @@ -112,14 +109,14 @@ GetParamByNodeName ( **/ CHAR16 * SplitStr ( - IN OUT CHAR16 **List, - IN CHAR16 Separator + IN OUT CHAR16 **List, + IN CHAR16 Separator ) { CHAR16 *Str; CHAR16 *ReturnStr; - Str = *List; + Str = *List; ReturnStr = Str; if (IS_NULL (*Str)) { @@ -133,6 +130,7 @@ SplitStr ( if (*Str == Separator) { break; } + Str++; } @@ -162,7 +160,7 @@ SplitStr ( **/ CHAR16 * GetNextParamStr ( - IN OUT CHAR16 **List + IN OUT CHAR16 **List ) { // @@ -202,9 +200,11 @@ GetNextDeviceNodeStr ( if (!IS_SLASH (*Str) && !IS_COMMA (*Str) && !IS_LEFT_PARENTH (*Str) && - !IS_RIGHT_PARENTH (*Str)) { + !IS_RIGHT_PARENTH (*Str)) + { break; } + Str++; } @@ -237,7 +237,7 @@ GetNextDeviceNodeStr ( if (IS_COMMA (*Str)) { *IsInstanceEnd = TRUE; - *Str = L'\0'; + *Str = L'\0'; Str++; } else { *IsInstanceEnd = FALSE; @@ -252,7 +252,6 @@ GetNextDeviceNodeStr ( return ReturnStr; } - /** Return whether the integer string is a hex string. @@ -264,23 +263,24 @@ GetNextDeviceNodeStr ( **/ BOOLEAN IsHexStr ( - IN CHAR16 *Str + IN CHAR16 *Str ) { // // skip preceeding white space // while ((*Str != 0) && *Str == L' ') { - Str ++; + Str++; } + // // skip preceeding zeros // while ((*Str != 0) && *Str == L'0') { - Str ++; + Str++; } - return (BOOLEAN) (*Str == L'x' || *Str == L'X'); + return (BOOLEAN)(*Str == L'x' || *Str == L'X'); } /** @@ -335,16 +335,17 @@ Strtoi64 ( **/ VOID StrToAscii ( - IN CHAR16 *Str, - IN OUT CHAR8 **AsciiStr + IN CHAR16 *Str, + IN OUT CHAR8 **AsciiStr ) { - CHAR8 *Dest; + CHAR8 *Dest; Dest = *AsciiStr; while (!IS_NULL (*Str)) { - *(Dest++) = (CHAR8) *(Str++); + *(Dest++) = (CHAR8)*(Str++); } + *Dest = 0; // @@ -363,14 +364,14 @@ StrToAscii ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextGenericPath ( - IN UINT8 Type, - IN CHAR16 *TextDeviceNode + IN UINT8 Type, + IN CHAR16 *TextDeviceNode ) { - EFI_DEVICE_PATH_PROTOCOL *Node; - CHAR16 *SubtypeStr; - CHAR16 *DataStr; - UINTN DataLength; + EFI_DEVICE_PATH_PROTOCOL *Node; + CHAR16 *SubtypeStr; + CHAR16 *DataStr; + UINTN DataLength; SubtypeStr = GetNextParamStr (&TextDeviceNode); DataStr = GetNextParamStr (&TextDeviceNode); @@ -380,13 +381,14 @@ DevPathFromTextGenericPath ( } else { DataLength = StrLen (DataStr) / 2; } + Node = CreateDeviceNode ( Type, - (UINT8) Strtoi (SubtypeStr), - (UINT16) (sizeof (EFI_DEVICE_PATH_PROTOCOL) + DataLength) + (UINT8)Strtoi (SubtypeStr), + (UINT16)(sizeof (EFI_DEVICE_PATH_PROTOCOL) + DataLength) ); - StrHexToBytes (DataStr, DataLength * 2, (UINT8 *) (Node + 1), DataLength); + StrHexToBytes (DataStr, DataLength * 2, (UINT8 *)(Node + 1), DataLength); return Node; } @@ -400,14 +402,14 @@ DevPathFromTextGenericPath ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPath ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *TypeStr; + CHAR16 *TypeStr; - TypeStr = GetNextParamStr (&TextDeviceNode); + TypeStr = GetNextParamStr (&TextDeviceNode); - return DevPathFromTextGenericPath ((UINT8) Strtoi (TypeStr), TextDeviceNode); + return DevPathFromTextGenericPath ((UINT8)Strtoi (TypeStr), TextDeviceNode); } /** @@ -420,7 +422,7 @@ DevPathFromTextPath ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextHardwarePath ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return DevPathFromTextGenericPath (HARDWARE_DEVICE_PATH, TextDeviceNode); @@ -436,25 +438,25 @@ DevPathFromTextHardwarePath ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPci ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *FunctionStr; - CHAR16 *DeviceStr; - PCI_DEVICE_PATH *Pci; + CHAR16 *FunctionStr; + CHAR16 *DeviceStr; + PCI_DEVICE_PATH *Pci; DeviceStr = GetNextParamStr (&TextDeviceNode); FunctionStr = GetNextParamStr (&TextDeviceNode); - Pci = (PCI_DEVICE_PATH *) CreateDeviceNode ( - HARDWARE_DEVICE_PATH, - HW_PCI_DP, - (UINT16) sizeof (PCI_DEVICE_PATH) - ); + Pci = (PCI_DEVICE_PATH *)CreateDeviceNode ( + HARDWARE_DEVICE_PATH, + HW_PCI_DP, + (UINT16)sizeof (PCI_DEVICE_PATH) + ); - Pci->Function = (UINT8) Strtoi (FunctionStr); - Pci->Device = (UINT8) Strtoi (DeviceStr); + Pci->Function = (UINT8)Strtoi (FunctionStr); + Pci->Device = (UINT8)Strtoi (DeviceStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Pci; + return (EFI_DEVICE_PATH_PROTOCOL *)Pci; } /** @@ -467,22 +469,22 @@ DevPathFromTextPci ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPcCard ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *FunctionNumberStr; PCCARD_DEVICE_PATH *Pccard; FunctionNumberStr = GetNextParamStr (&TextDeviceNode); - Pccard = (PCCARD_DEVICE_PATH *) CreateDeviceNode ( - HARDWARE_DEVICE_PATH, - HW_PCCARD_DP, - (UINT16) sizeof (PCCARD_DEVICE_PATH) - ); + Pccard = (PCCARD_DEVICE_PATH *)CreateDeviceNode ( + HARDWARE_DEVICE_PATH, + HW_PCCARD_DP, + (UINT16)sizeof (PCCARD_DEVICE_PATH) + ); - Pccard->FunctionNumber = (UINT8) Strtoi (FunctionNumberStr); + Pccard->FunctionNumber = (UINT8)Strtoi (FunctionNumberStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Pccard; + return (EFI_DEVICE_PATH_PROTOCOL *)Pccard; } /** @@ -495,7 +497,7 @@ DevPathFromTextPcCard ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextMemoryMapped ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *MemoryTypeStr; @@ -506,17 +508,17 @@ DevPathFromTextMemoryMapped ( MemoryTypeStr = GetNextParamStr (&TextDeviceNode); StartingAddressStr = GetNextParamStr (&TextDeviceNode); EndingAddressStr = GetNextParamStr (&TextDeviceNode); - MemMap = (MEMMAP_DEVICE_PATH *) CreateDeviceNode ( + MemMap = (MEMMAP_DEVICE_PATH *)CreateDeviceNode ( HARDWARE_DEVICE_PATH, HW_MEMMAP_DP, - (UINT16) sizeof (MEMMAP_DEVICE_PATH) + (UINT16)sizeof (MEMMAP_DEVICE_PATH) ); - MemMap->MemoryType = (UINT32) Strtoi (MemoryTypeStr); + MemMap->MemoryType = (UINT32)Strtoi (MemoryTypeStr); Strtoi64 (StartingAddressStr, &MemMap->StartingAddress); Strtoi64 (EndingAddressStr, &MemMap->EndingAddress); - return (EFI_DEVICE_PATH_PROTOCOL *) MemMap; + return (EFI_DEVICE_PATH_PROTOCOL *)MemMap; } /** @@ -532,9 +534,9 @@ DevPathFromTextMemoryMapped ( **/ EFI_DEVICE_PATH_PROTOCOL * ConvertFromTextVendor ( - IN CHAR16 *TextDeviceNode, - IN UINT8 Type, - IN UINT8 SubType + IN CHAR16 *TextDeviceNode, + IN UINT8 Type, + IN UINT8 SubType ) { CHAR16 *GuidStr; @@ -549,18 +551,18 @@ ConvertFromTextVendor ( // // Two hex characters make up 1 buffer byte // - Length = (Length + 1) / 2; + Length = (Length + 1) / 2; - Vendor = (VENDOR_DEVICE_PATH *) CreateDeviceNode ( - Type, - SubType, - (UINT16) (sizeof (VENDOR_DEVICE_PATH) + Length) - ); + Vendor = (VENDOR_DEVICE_PATH *)CreateDeviceNode ( + Type, + SubType, + (UINT16)(sizeof (VENDOR_DEVICE_PATH) + Length) + ); StrToGuid (GuidStr, &Vendor->Guid); - StrHexToBytes (DataStr, Length * 2, (UINT8 *) (Vendor + 1), Length); + StrHexToBytes (DataStr, Length * 2, (UINT8 *)(Vendor + 1), Length); - return (EFI_DEVICE_PATH_PROTOCOL *) Vendor; + return (EFI_DEVICE_PATH_PROTOCOL *)Vendor; } /** @@ -573,7 +575,7 @@ ConvertFromTextVendor ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenHw ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextVendor ( @@ -593,21 +595,21 @@ DevPathFromTextVenHw ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextCtrl ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *ControllerStr; CONTROLLER_DEVICE_PATH *Controller; ControllerStr = GetNextParamStr (&TextDeviceNode); - Controller = (CONTROLLER_DEVICE_PATH *) CreateDeviceNode ( - HARDWARE_DEVICE_PATH, - HW_CONTROLLER_DP, - (UINT16) sizeof (CONTROLLER_DEVICE_PATH) - ); - Controller->ControllerNumber = (UINT32) Strtoi (ControllerStr); + Controller = (CONTROLLER_DEVICE_PATH *)CreateDeviceNode ( + HARDWARE_DEVICE_PATH, + HW_CONTROLLER_DP, + (UINT16)sizeof (CONTROLLER_DEVICE_PATH) + ); + Controller->ControllerNumber = (UINT32)Strtoi (ControllerStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Controller; + return (EFI_DEVICE_PATH_PROTOCOL *)Controller; } /** @@ -620,28 +622,28 @@ DevPathFromTextCtrl ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextBmc ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *InterfaceTypeStr; - CHAR16 *BaseAddressStr; - BMC_DEVICE_PATH *BmcDp; + CHAR16 *InterfaceTypeStr; + CHAR16 *BaseAddressStr; + BMC_DEVICE_PATH *BmcDp; InterfaceTypeStr = GetNextParamStr (&TextDeviceNode); BaseAddressStr = GetNextParamStr (&TextDeviceNode); - BmcDp = (BMC_DEVICE_PATH *) CreateDeviceNode ( - HARDWARE_DEVICE_PATH, - HW_BMC_DP, - (UINT16) sizeof (BMC_DEVICE_PATH) - ); + BmcDp = (BMC_DEVICE_PATH *)CreateDeviceNode ( + HARDWARE_DEVICE_PATH, + HW_BMC_DP, + (UINT16)sizeof (BMC_DEVICE_PATH) + ); - BmcDp->InterfaceType = (UINT8) Strtoi (InterfaceTypeStr); + BmcDp->InterfaceType = (UINT8)Strtoi (InterfaceTypeStr); WriteUnaligned64 ( - (UINT64 *) (&BmcDp->BaseAddress), + (UINT64 *)(&BmcDp->BaseAddress), StrHexToUint64 (BaseAddressStr) ); - return (EFI_DEVICE_PATH_PROTOCOL *) BmcDp; + return (EFI_DEVICE_PATH_PROTOCOL *)BmcDp; } /** @@ -654,7 +656,7 @@ DevPathFromTextBmc ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextAcpiPath ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return DevPathFromTextGenericPath (ACPI_DEVICE_PATH, TextDeviceNode); @@ -669,14 +671,14 @@ DevPathFromTextAcpiPath ( **/ UINT32 EisaIdFromText ( - IN CHAR16 *Text + IN CHAR16 *Text ) { return (((Text[0] - 'A' + 1) & 0x1f) << 10) - + (((Text[1] - 'A' + 1) & 0x1f) << 5) - + (((Text[2] - 'A' + 1) & 0x1f) << 0) - + (UINT32) (StrHexToUintn (&Text[3]) << 16) - ; + + (((Text[1] - 'A' + 1) & 0x1f) << 5) + + (((Text[2] - 'A' + 1) & 0x1f) << 0) + + (UINT32)(StrHexToUintn (&Text[3]) << 16) + ; } /** @@ -689,7 +691,7 @@ EisaIdFromText ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextAcpi ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *HIDStr; @@ -698,16 +700,16 @@ DevPathFromTextAcpi ( HIDStr = GetNextParamStr (&TextDeviceNode); UIDStr = GetNextParamStr (&TextDeviceNode); - Acpi = (ACPI_HID_DEVICE_PATH *) CreateDeviceNode ( - ACPI_DEVICE_PATH, - ACPI_DP, - (UINT16) sizeof (ACPI_HID_DEVICE_PATH) - ); + Acpi = (ACPI_HID_DEVICE_PATH *)CreateDeviceNode ( + ACPI_DEVICE_PATH, + ACPI_DP, + (UINT16)sizeof (ACPI_HID_DEVICE_PATH) + ); Acpi->HID = EisaIdFromText (HIDStr); - Acpi->UID = (UINT32) Strtoi (UIDStr); + Acpi->UID = (UINT32)Strtoi (UIDStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Acpi; + return (EFI_DEVICE_PATH_PROTOCOL *)Acpi; } /** @@ -721,7 +723,7 @@ DevPathFromTextAcpi ( **/ EFI_DEVICE_PATH_PROTOCOL * ConvertFromTextAcpi ( - IN CHAR16 *TextDeviceNode, + IN CHAR16 *TextDeviceNode, IN UINT32 PnPId ) { @@ -729,16 +731,16 @@ ConvertFromTextAcpi ( ACPI_HID_DEVICE_PATH *Acpi; UIDStr = GetNextParamStr (&TextDeviceNode); - Acpi = (ACPI_HID_DEVICE_PATH *) CreateDeviceNode ( - ACPI_DEVICE_PATH, - ACPI_DP, - (UINT16) sizeof (ACPI_HID_DEVICE_PATH) - ); + Acpi = (ACPI_HID_DEVICE_PATH *)CreateDeviceNode ( + ACPI_DEVICE_PATH, + ACPI_DP, + (UINT16)sizeof (ACPI_HID_DEVICE_PATH) + ); Acpi->HID = EFI_PNP_ID (PnPId); - Acpi->UID = (UINT32) Strtoi (UIDStr); + Acpi->UID = (UINT32)Strtoi (UIDStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Acpi; + return (EFI_DEVICE_PATH_PROTOCOL *)Acpi; } /** @@ -751,7 +753,7 @@ ConvertFromTextAcpi ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPciRoot ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextAcpi (TextDeviceNode, 0x0a03); @@ -767,7 +769,7 @@ DevPathFromTextPciRoot ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPcieRoot ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextAcpi (TextDeviceNode, 0x0a08); @@ -783,7 +785,7 @@ DevPathFromTextPcieRoot ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextFloppy ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextAcpi (TextDeviceNode, 0x0604); @@ -799,7 +801,7 @@ DevPathFromTextFloppy ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextKeyboard ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextAcpi (TextDeviceNode, 0x0301); @@ -815,7 +817,7 @@ DevPathFromTextKeyboard ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextSerial ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextAcpi (TextDeviceNode, 0x0501); @@ -831,7 +833,7 @@ DevPathFromTextSerial ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextParallelPort ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextAcpi (TextDeviceNode, 0x0401); @@ -847,7 +849,7 @@ DevPathFromTextParallelPort ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextAcpiEx ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *HIDStr; @@ -867,25 +869,25 @@ DevPathFromTextAcpiEx ( CIDSTRStr = GetNextParamStr (&TextDeviceNode); UIDSTRStr = GetNextParamStr (&TextDeviceNode); - Length = (UINT16) (sizeof (ACPI_EXTENDED_HID_DEVICE_PATH) + StrLen (HIDSTRStr) + 1); - Length = (UINT16) (Length + StrLen (UIDSTRStr) + 1); - Length = (UINT16) (Length + StrLen (CIDSTRStr) + 1); - AcpiEx = (ACPI_EXTENDED_HID_DEVICE_PATH *) CreateDeviceNode ( - ACPI_DEVICE_PATH, - ACPI_EXTENDED_DP, - Length - ); + Length = (UINT16)(sizeof (ACPI_EXTENDED_HID_DEVICE_PATH) + StrLen (HIDSTRStr) + 1); + Length = (UINT16)(Length + StrLen (UIDSTRStr) + 1); + Length = (UINT16)(Length + StrLen (CIDSTRStr) + 1); + AcpiEx = (ACPI_EXTENDED_HID_DEVICE_PATH *)CreateDeviceNode ( + ACPI_DEVICE_PATH, + ACPI_EXTENDED_DP, + Length + ); AcpiEx->HID = EisaIdFromText (HIDStr); AcpiEx->CID = EisaIdFromText (CIDStr); - AcpiEx->UID = (UINT32) Strtoi (UIDStr); + AcpiEx->UID = (UINT32)Strtoi (UIDStr); - AsciiStr = (CHAR8 *) ((UINT8 *)AcpiEx + sizeof (ACPI_EXTENDED_HID_DEVICE_PATH)); + AsciiStr = (CHAR8 *)((UINT8 *)AcpiEx + sizeof (ACPI_EXTENDED_HID_DEVICE_PATH)); StrToAscii (HIDSTRStr, &AsciiStr); StrToAscii (UIDSTRStr, &AsciiStr); StrToAscii (CIDSTRStr, &AsciiStr); - return (EFI_DEVICE_PATH_PROTOCOL *) AcpiEx; + return (EFI_DEVICE_PATH_PROTOCOL *)AcpiEx; } /** @@ -898,7 +900,7 @@ DevPathFromTextAcpiEx ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextAcpiExp ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *HIDStr; @@ -911,18 +913,28 @@ DevPathFromTextAcpiExp ( HIDStr = GetNextParamStr (&TextDeviceNode); CIDStr = GetNextParamStr (&TextDeviceNode); UIDSTRStr = GetNextParamStr (&TextDeviceNode); - Length = (UINT16) (sizeof (ACPI_EXTENDED_HID_DEVICE_PATH) + StrLen (UIDSTRStr) + 3); - AcpiEx = (ACPI_EXTENDED_HID_DEVICE_PATH *) CreateDeviceNode ( - ACPI_DEVICE_PATH, - ACPI_EXTENDED_DP, - Length - ); + Length = (UINT16)(sizeof (ACPI_EXTENDED_HID_DEVICE_PATH) + StrLen (UIDSTRStr) + 3); + AcpiEx = (ACPI_EXTENDED_HID_DEVICE_PATH *)CreateDeviceNode ( + ACPI_DEVICE_PATH, + ACPI_EXTENDED_DP, + Length + ); AcpiEx->HID = EisaIdFromText (HIDStr); - AcpiEx->CID = EisaIdFromText (CIDStr); + // + // According to UEFI spec, the CID parametr is optional and has a default value of 0. + // So when the CID parametr is not specified or specified as 0 in the text device node. + // Set the CID to 0 in the ACPI extension device path structure. + // + if ((*CIDStr == L'\0') || (*CIDStr == L'0')) { + AcpiEx->CID = 0; + } else { + AcpiEx->CID = EisaIdFromText (CIDStr); + } + AcpiEx->UID = 0; - AsciiStr = (CHAR8 *) ((UINT8 *)AcpiEx + sizeof (ACPI_EXTENDED_HID_DEVICE_PATH)); + AsciiStr = (CHAR8 *)((UINT8 *)AcpiEx + sizeof (ACPI_EXTENDED_HID_DEVICE_PATH)); // // HID string is NULL // @@ -937,7 +949,7 @@ DevPathFromTextAcpiExp ( // *AsciiStr = '\0'; - return (EFI_DEVICE_PATH_PROTOCOL *) AcpiEx; + return (EFI_DEVICE_PATH_PROTOCOL *)AcpiEx; } /** @@ -950,7 +962,7 @@ DevPathFromTextAcpiExp ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextAcpiAdr ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *DisplayDeviceStr; @@ -958,11 +970,11 @@ DevPathFromTextAcpiAdr ( UINTN Index; UINTN Length; - AcpiAdr = (ACPI_ADR_DEVICE_PATH *) CreateDeviceNode ( - ACPI_DEVICE_PATH, - ACPI_ADR_DP, - (UINT16) sizeof (ACPI_ADR_DEVICE_PATH) - ); + AcpiAdr = (ACPI_ADR_DEVICE_PATH *)CreateDeviceNode ( + ACPI_DEVICE_PATH, + ACPI_ADR_DP, + (UINT16)sizeof (ACPI_ADR_DEVICE_PATH) + ); ASSERT (AcpiAdr != NULL); for (Index = 0; ; Index++) { @@ -970,6 +982,7 @@ DevPathFromTextAcpiAdr ( if (IS_NULL (*DisplayDeviceStr)) { break; } + if (Index > 0) { Length = DevicePathNodeLength (AcpiAdr); AcpiAdr = ReallocatePool ( @@ -981,10 +994,10 @@ DevPathFromTextAcpiAdr ( SetDevicePathNodeLength (AcpiAdr, Length + sizeof (UINT32)); } - (&AcpiAdr->ADR)[Index] = (UINT32) Strtoi (DisplayDeviceStr); + (&AcpiAdr->ADR)[Index] = (UINT32)Strtoi (DisplayDeviceStr); } - return (EFI_DEVICE_PATH_PROTOCOL *) AcpiAdr; + return (EFI_DEVICE_PATH_PROTOCOL *)AcpiAdr; } /** @@ -997,7 +1010,7 @@ DevPathFromTextAcpiAdr ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextMsg ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return DevPathFromTextGenericPath (MESSAGING_DEVICE_PATH, TextDeviceNode); @@ -1013,19 +1026,19 @@ DevPathFromTextMsg ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextAta ( -IN CHAR16 *TextDeviceNode -) + IN CHAR16 *TextDeviceNode + ) { - CHAR16 *PrimarySecondaryStr; - CHAR16 *SlaveMasterStr; - CHAR16 *LunStr; - ATAPI_DEVICE_PATH *Atapi; + CHAR16 *PrimarySecondaryStr; + CHAR16 *SlaveMasterStr; + CHAR16 *LunStr; + ATAPI_DEVICE_PATH *Atapi; - Atapi = (ATAPI_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_ATAPI_DP, - (UINT16) sizeof (ATAPI_DEVICE_PATH) - ); + Atapi = (ATAPI_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_ATAPI_DP, + (UINT16)sizeof (ATAPI_DEVICE_PATH) + ); PrimarySecondaryStr = GetNextParamStr (&TextDeviceNode); SlaveMasterStr = GetNextParamStr (&TextDeviceNode); @@ -1036,19 +1049,20 @@ IN CHAR16 *TextDeviceNode } else if (StrCmp (PrimarySecondaryStr, L"Secondary") == 0) { Atapi->PrimarySecondary = 1; } else { - Atapi->PrimarySecondary = (UINT8) Strtoi (PrimarySecondaryStr); + Atapi->PrimarySecondary = (UINT8)Strtoi (PrimarySecondaryStr); } + if (StrCmp (SlaveMasterStr, L"Master") == 0) { - Atapi->SlaveMaster = 0; + Atapi->SlaveMaster = 0; } else if (StrCmp (SlaveMasterStr, L"Slave") == 0) { - Atapi->SlaveMaster = 1; + Atapi->SlaveMaster = 1; } else { - Atapi->SlaveMaster = (UINT8) Strtoi (SlaveMasterStr); + Atapi->SlaveMaster = (UINT8)Strtoi (SlaveMasterStr); } - Atapi->Lun = (UINT16) Strtoi (LunStr); + Atapi->Lun = (UINT16)Strtoi (LunStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Atapi; + return (EFI_DEVICE_PATH_PROTOCOL *)Atapi; } /** @@ -1061,7 +1075,7 @@ IN CHAR16 *TextDeviceNode **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextScsi ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *PunStr; @@ -1070,16 +1084,16 @@ DevPathFromTextScsi ( PunStr = GetNextParamStr (&TextDeviceNode); LunStr = GetNextParamStr (&TextDeviceNode); - Scsi = (SCSI_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_SCSI_DP, - (UINT16) sizeof (SCSI_DEVICE_PATH) - ); + Scsi = (SCSI_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_SCSI_DP, + (UINT16)sizeof (SCSI_DEVICE_PATH) + ); - Scsi->Pun = (UINT16) Strtoi (PunStr); - Scsi->Lun = (UINT16) Strtoi (LunStr); + Scsi->Pun = (UINT16)Strtoi (PunStr); + Scsi->Lun = (UINT16)Strtoi (LunStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Scsi; + return (EFI_DEVICE_PATH_PROTOCOL *)Scsi; } /** @@ -1092,7 +1106,7 @@ DevPathFromTextScsi ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextFibre ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *WWNStr; @@ -1101,17 +1115,17 @@ DevPathFromTextFibre ( WWNStr = GetNextParamStr (&TextDeviceNode); LunStr = GetNextParamStr (&TextDeviceNode); - Fibre = (FIBRECHANNEL_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_FIBRECHANNEL_DP, - (UINT16) sizeof (FIBRECHANNEL_DEVICE_PATH) - ); + Fibre = (FIBRECHANNEL_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_FIBRECHANNEL_DP, + (UINT16)sizeof (FIBRECHANNEL_DEVICE_PATH) + ); Fibre->Reserved = 0; Strtoi64 (WWNStr, &Fibre->WWN); Strtoi64 (LunStr, &Fibre->Lun); - return (EFI_DEVICE_PATH_PROTOCOL *) Fibre; + return (EFI_DEVICE_PATH_PROTOCOL *)Fibre; } /** @@ -1124,7 +1138,7 @@ DevPathFromTextFibre ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextFibreEx ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *WWNStr; @@ -1133,20 +1147,20 @@ DevPathFromTextFibreEx ( WWNStr = GetNextParamStr (&TextDeviceNode); LunStr = GetNextParamStr (&TextDeviceNode); - FibreEx = (FIBRECHANNELEX_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_FIBRECHANNELEX_DP, - (UINT16) sizeof (FIBRECHANNELEX_DEVICE_PATH) - ); + FibreEx = (FIBRECHANNELEX_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_FIBRECHANNELEX_DP, + (UINT16)sizeof (FIBRECHANNELEX_DEVICE_PATH) + ); FibreEx->Reserved = 0; - Strtoi64 (WWNStr, (UINT64 *) (&FibreEx->WWN)); - Strtoi64 (LunStr, (UINT64 *) (&FibreEx->Lun)); + Strtoi64 (WWNStr, (UINT64 *)(&FibreEx->WWN)); + Strtoi64 (LunStr, (UINT64 *)(&FibreEx->Lun)); - *(UINT64 *) (&FibreEx->WWN) = SwapBytes64 (*(UINT64 *) (&FibreEx->WWN)); - *(UINT64 *) (&FibreEx->Lun) = SwapBytes64 (*(UINT64 *) (&FibreEx->Lun)); + *(UINT64 *)(&FibreEx->WWN) = SwapBytes64 (*(UINT64 *)(&FibreEx->WWN)); + *(UINT64 *)(&FibreEx->Lun) = SwapBytes64 (*(UINT64 *)(&FibreEx->Lun)); - return (EFI_DEVICE_PATH_PROTOCOL *) FibreEx; + return (EFI_DEVICE_PATH_PROTOCOL *)FibreEx; } /** @@ -1159,23 +1173,23 @@ DevPathFromTextFibreEx ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromText1394 ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *GuidStr; - F1394_DEVICE_PATH *F1394DevPath; + CHAR16 *GuidStr; + F1394_DEVICE_PATH *F1394DevPath; - GuidStr = GetNextParamStr (&TextDeviceNode); - F1394DevPath = (F1394_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_1394_DP, - (UINT16) sizeof (F1394_DEVICE_PATH) - ); + GuidStr = GetNextParamStr (&TextDeviceNode); + F1394DevPath = (F1394_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_1394_DP, + (UINT16)sizeof (F1394_DEVICE_PATH) + ); F1394DevPath->Reserved = 0; F1394DevPath->Guid = StrHexToUint64 (GuidStr); - return (EFI_DEVICE_PATH_PROTOCOL *) F1394DevPath; + return (EFI_DEVICE_PATH_PROTOCOL *)F1394DevPath; } /** @@ -1188,25 +1202,25 @@ DevPathFromText1394 ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsb ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *PortStr; - CHAR16 *InterfaceStr; - USB_DEVICE_PATH *Usb; + CHAR16 *PortStr; + CHAR16 *InterfaceStr; + USB_DEVICE_PATH *Usb; - PortStr = GetNextParamStr (&TextDeviceNode); - InterfaceStr = GetNextParamStr (&TextDeviceNode); - Usb = (USB_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_USB_DP, - (UINT16) sizeof (USB_DEVICE_PATH) - ); + PortStr = GetNextParamStr (&TextDeviceNode); + InterfaceStr = GetNextParamStr (&TextDeviceNode); + Usb = (USB_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_USB_DP, + (UINT16)sizeof (USB_DEVICE_PATH) + ); - Usb->ParentPortNumber = (UINT8) Strtoi (PortStr); - Usb->InterfaceNumber = (UINT8) Strtoi (InterfaceStr); + Usb->ParentPortNumber = (UINT8)Strtoi (PortStr); + Usb->InterfaceNumber = (UINT8)Strtoi (InterfaceStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Usb; + return (EFI_DEVICE_PATH_PROTOCOL *)Usb; } /** @@ -1219,22 +1233,22 @@ DevPathFromTextUsb ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextI2O ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *TIDStr; - I2O_DEVICE_PATH *I2ODevPath; + CHAR16 *TIDStr; + I2O_DEVICE_PATH *I2ODevPath; TIDStr = GetNextParamStr (&TextDeviceNode); - I2ODevPath = (I2O_DEVICE_PATH *) CreateDeviceNode ( + I2ODevPath = (I2O_DEVICE_PATH *)CreateDeviceNode ( MESSAGING_DEVICE_PATH, MSG_I2O_DP, - (UINT16) sizeof (I2O_DEVICE_PATH) + (UINT16)sizeof (I2O_DEVICE_PATH) ); - I2ODevPath->Tid = (UINT32) Strtoi (TIDStr); + I2ODevPath->Tid = (UINT32)Strtoi (TIDStr); - return (EFI_DEVICE_PATH_PROTOCOL *) I2ODevPath; + return (EFI_DEVICE_PATH_PROTOCOL *)I2ODevPath; } /** @@ -1247,7 +1261,7 @@ DevPathFromTextI2O ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextInfiniband ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *FlagsStr; @@ -1262,19 +1276,19 @@ DevPathFromTextInfiniband ( SidStr = GetNextParamStr (&TextDeviceNode); TidStr = GetNextParamStr (&TextDeviceNode); DidStr = GetNextParamStr (&TextDeviceNode); - InfiniBand = (INFINIBAND_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_INFINIBAND_DP, - (UINT16) sizeof (INFINIBAND_DEVICE_PATH) - ); + InfiniBand = (INFINIBAND_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_INFINIBAND_DP, + (UINT16)sizeof (INFINIBAND_DEVICE_PATH) + ); - InfiniBand->ResourceFlags = (UINT32) Strtoi (FlagsStr); - StrToGuid (GuidStr, (EFI_GUID *) InfiniBand->PortGid); + InfiniBand->ResourceFlags = (UINT32)Strtoi (FlagsStr); + StrToGuid (GuidStr, (EFI_GUID *)InfiniBand->PortGid); Strtoi64 (SidStr, &InfiniBand->ServiceId); Strtoi64 (TidStr, &InfiniBand->TargetPortId); Strtoi64 (DidStr, &InfiniBand->DeviceId); - return (EFI_DEVICE_PATH_PROTOCOL *) InfiniBand; + return (EFI_DEVICE_PATH_PROTOCOL *)InfiniBand; } /** @@ -1287,14 +1301,14 @@ DevPathFromTextInfiniband ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenMsg ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextVendor ( - TextDeviceNode, - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP - ); + TextDeviceNode, + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP + ); } /** @@ -1307,18 +1321,19 @@ DevPathFromTextVenMsg ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenPcAnsi ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { VENDOR_DEVICE_PATH *Vendor; - Vendor = (VENDOR_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (VENDOR_DEVICE_PATH)); + Vendor = (VENDOR_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (VENDOR_DEVICE_PATH) + ); CopyGuid (&Vendor->Guid, &gEfiPcAnsiGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) Vendor; + return (EFI_DEVICE_PATH_PROTOCOL *)Vendor; } /** @@ -1331,18 +1346,19 @@ DevPathFromTextVenPcAnsi ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenVt100 ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { VENDOR_DEVICE_PATH *Vendor; - Vendor = (VENDOR_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (VENDOR_DEVICE_PATH)); + Vendor = (VENDOR_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (VENDOR_DEVICE_PATH) + ); CopyGuid (&Vendor->Guid, &gEfiVT100Guid); - return (EFI_DEVICE_PATH_PROTOCOL *) Vendor; + return (EFI_DEVICE_PATH_PROTOCOL *)Vendor; } /** @@ -1355,18 +1371,19 @@ DevPathFromTextVenVt100 ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenVt100Plus ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { VENDOR_DEVICE_PATH *Vendor; - Vendor = (VENDOR_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (VENDOR_DEVICE_PATH)); + Vendor = (VENDOR_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (VENDOR_DEVICE_PATH) + ); CopyGuid (&Vendor->Guid, &gEfiVT100PlusGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) Vendor; + return (EFI_DEVICE_PATH_PROTOCOL *)Vendor; } /** @@ -1379,18 +1396,19 @@ DevPathFromTextVenVt100Plus ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenUtf8 ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { VENDOR_DEVICE_PATH *Vendor; - Vendor = (VENDOR_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (VENDOR_DEVICE_PATH)); + Vendor = (VENDOR_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (VENDOR_DEVICE_PATH) + ); CopyGuid (&Vendor->Guid, &gEfiVTUTF8Guid); - return (EFI_DEVICE_PATH_PROTOCOL *) Vendor; + return (EFI_DEVICE_PATH_PROTOCOL *)Vendor; } /** @@ -1403,18 +1421,18 @@ DevPathFromTextVenUtf8 ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUartFlowCtrl ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *ValueStr; - UART_FLOW_CONTROL_DEVICE_PATH *UartFlowControl; + CHAR16 *ValueStr; + UART_FLOW_CONTROL_DEVICE_PATH *UartFlowControl; ValueStr = GetNextParamStr (&TextDeviceNode); - UartFlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (UART_FLOW_CONTROL_DEVICE_PATH) - ); + UartFlowControl = (UART_FLOW_CONTROL_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (UART_FLOW_CONTROL_DEVICE_PATH) + ); CopyGuid (&UartFlowControl->Guid, &gEfiUartDevicePathGuid); if (StrCmp (ValueStr, L"XonXoff") == 0) { @@ -1425,7 +1443,7 @@ DevPathFromTextUartFlowCtrl ( UartFlowControl->FlowControlMap = 0; } - return (EFI_DEVICE_PATH_PROTOCOL *) UartFlowControl; + return (EFI_DEVICE_PATH_PROTOCOL *)UartFlowControl; } /** @@ -1438,20 +1456,20 @@ DevPathFromTextUartFlowCtrl ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextSAS ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *AddressStr; - CHAR16 *LunStr; - CHAR16 *RTPStr; - CHAR16 *SASSATAStr; - CHAR16 *LocationStr; - CHAR16 *ConnectStr; - CHAR16 *DriveBayStr; - CHAR16 *ReservedStr; - UINT16 Info; - UINT16 Uint16; - SAS_DEVICE_PATH *Sas; + CHAR16 *AddressStr; + CHAR16 *LunStr; + CHAR16 *RTPStr; + CHAR16 *SASSATAStr; + CHAR16 *LocationStr; + CHAR16 *ConnectStr; + CHAR16 *DriveBayStr; + CHAR16 *ReservedStr; + UINT16 Info; + UINT16 Uint16; + SAS_DEVICE_PATH *Sas; AddressStr = GetNextParamStr (&TextDeviceNode); LunStr = GetNextParamStr (&TextDeviceNode); @@ -1461,27 +1479,25 @@ DevPathFromTextSAS ( ConnectStr = GetNextParamStr (&TextDeviceNode); DriveBayStr = GetNextParamStr (&TextDeviceNode); ReservedStr = GetNextParamStr (&TextDeviceNode); - Sas = (SAS_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (SAS_DEVICE_PATH) - ); + Sas = (SAS_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (SAS_DEVICE_PATH) + ); CopyGuid (&Sas->Guid, &gEfiSasDevicePathGuid); Strtoi64 (AddressStr, &Sas->SasAddress); Strtoi64 (LunStr, &Sas->Lun); - Sas->RelativeTargetPort = (UINT16) Strtoi (RTPStr); + Sas->RelativeTargetPort = (UINT16)Strtoi (RTPStr); if (StrCmp (SASSATAStr, L"NoTopology") == 0) { Info = 0x0; - } else if ((StrCmp (SASSATAStr, L"SATA") == 0) || (StrCmp (SASSATAStr, L"SAS") == 0)) { - - Uint16 = (UINT16) Strtoi (DriveBayStr); + Uint16 = (UINT16)Strtoi (DriveBayStr); if (Uint16 == 0) { Info = 0x1; } else { - Info = (UINT16) (0x2 | ((Uint16 - 1) << 8)); + Info = (UINT16)(0x2 | ((Uint16 - 1) << 8)); } if (StrCmp (SASSATAStr, L"SATA") == 0) { @@ -1497,8 +1513,9 @@ DevPathFromTextSAS ( } else if (StrCmp (LocationStr, L"Internal") == 0) { Uint16 = 0; } else { - Uint16 = ((UINT16) Strtoi (LocationStr) & BIT0); + Uint16 = ((UINT16)Strtoi (LocationStr) & BIT0); } + Info |= (Uint16 << 5); // @@ -1510,18 +1527,18 @@ DevPathFromTextSAS ( } else if (StrCmp (ConnectStr, L"Direct") == 0) { Uint16 = 0; } else { - Uint16 = ((UINT16) Strtoi (ConnectStr) & (BIT0 | BIT1)); + Uint16 = ((UINT16)Strtoi (ConnectStr) & (BIT0 | BIT1)); } - Info |= (Uint16 << 6); + Info |= (Uint16 << 6); } else { - Info = (UINT16) Strtoi (SASSATAStr); + Info = (UINT16)Strtoi (SASSATAStr); } Sas->DeviceTopology = Info; - Sas->Reserved = (UINT32) Strtoi (ReservedStr); + Sas->Reserved = (UINT32)Strtoi (ReservedStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Sas; + return (EFI_DEVICE_PATH_PROTOCOL *)Sas; } /** @@ -1534,21 +1551,21 @@ DevPathFromTextSAS ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextSasEx ( - IN CHAR16 *TextDeviceNode - ) -{ - CHAR16 *AddressStr; - CHAR16 *LunStr; - CHAR16 *RTPStr; - CHAR16 *SASSATAStr; - CHAR16 *LocationStr; - CHAR16 *ConnectStr; - CHAR16 *DriveBayStr; - UINT16 Info; - UINT16 Uint16; - UINT64 SasAddress; - UINT64 Lun; - SASEX_DEVICE_PATH *SasEx; + IN CHAR16 *TextDeviceNode + ) +{ + CHAR16 *AddressStr; + CHAR16 *LunStr; + CHAR16 *RTPStr; + CHAR16 *SASSATAStr; + CHAR16 *LocationStr; + CHAR16 *ConnectStr; + CHAR16 *DriveBayStr; + UINT16 Info; + UINT16 Uint16; + UINT64 SasAddress; + UINT64 Lun; + SASEX_DEVICE_PATH *SasEx; AddressStr = GetNextParamStr (&TextDeviceNode); LunStr = GetNextParamStr (&TextDeviceNode); @@ -1557,28 +1574,26 @@ DevPathFromTextSasEx ( LocationStr = GetNextParamStr (&TextDeviceNode); ConnectStr = GetNextParamStr (&TextDeviceNode); DriveBayStr = GetNextParamStr (&TextDeviceNode); - SasEx = (SASEX_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_SASEX_DP, - (UINT16) sizeof (SASEX_DEVICE_PATH) - ); + SasEx = (SASEX_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_SASEX_DP, + (UINT16)sizeof (SASEX_DEVICE_PATH) + ); Strtoi64 (AddressStr, &SasAddress); - Strtoi64 (LunStr, &Lun); - WriteUnaligned64 ((UINT64 *) &SasEx->SasAddress, SwapBytes64 (SasAddress)); - WriteUnaligned64 ((UINT64 *) &SasEx->Lun, SwapBytes64 (Lun)); - SasEx->RelativeTargetPort = (UINT16) Strtoi (RTPStr); + Strtoi64 (LunStr, &Lun); + WriteUnaligned64 ((UINT64 *)&SasEx->SasAddress, SwapBytes64 (SasAddress)); + WriteUnaligned64 ((UINT64 *)&SasEx->Lun, SwapBytes64 (Lun)); + SasEx->RelativeTargetPort = (UINT16)Strtoi (RTPStr); if (StrCmp (SASSATAStr, L"NoTopology") == 0) { Info = 0x0; - } else if ((StrCmp (SASSATAStr, L"SATA") == 0) || (StrCmp (SASSATAStr, L"SAS") == 0)) { - - Uint16 = (UINT16) Strtoi (DriveBayStr); + Uint16 = (UINT16)Strtoi (DriveBayStr); if (Uint16 == 0) { Info = 0x1; } else { - Info = (UINT16) (0x2 | ((Uint16 - 1) << 8)); + Info = (UINT16)(0x2 | ((Uint16 - 1) << 8)); } if (StrCmp (SASSATAStr, L"SATA") == 0) { @@ -1594,8 +1609,9 @@ DevPathFromTextSasEx ( } else if (StrCmp (LocationStr, L"Internal") == 0) { Uint16 = 0; } else { - Uint16 = ((UINT16) Strtoi (LocationStr) & BIT0); + Uint16 = ((UINT16)Strtoi (LocationStr) & BIT0); } + Info |= (Uint16 << 5); // @@ -1607,17 +1623,17 @@ DevPathFromTextSasEx ( } else if (StrCmp (ConnectStr, L"Direct") == 0) { Uint16 = 0; } else { - Uint16 = ((UINT16) Strtoi (ConnectStr) & (BIT0 | BIT1)); + Uint16 = ((UINT16)Strtoi (ConnectStr) & (BIT0 | BIT1)); } - Info |= (Uint16 << 6); + Info |= (Uint16 << 6); } else { - Info = (UINT16) Strtoi (SASSATAStr); + Info = (UINT16)Strtoi (SASSATAStr); } SasEx->DeviceTopology = Info; - return (EFI_DEVICE_PATH_PROTOCOL *) SasEx; + return (EFI_DEVICE_PATH_PROTOCOL *)SasEx; } /** @@ -1630,32 +1646,32 @@ DevPathFromTextSasEx ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextNVMe ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *NamespaceIdStr; - CHAR16 *NamespaceUuidStr; - NVME_NAMESPACE_DEVICE_PATH *Nvme; - UINT8 *Uuid; - UINTN Index; + CHAR16 *NamespaceIdStr; + CHAR16 *NamespaceUuidStr; + NVME_NAMESPACE_DEVICE_PATH *Nvme; + UINT8 *Uuid; + UINTN Index; NamespaceIdStr = GetNextParamStr (&TextDeviceNode); NamespaceUuidStr = GetNextParamStr (&TextDeviceNode); - Nvme = (NVME_NAMESPACE_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_NVME_NAMESPACE_DP, - (UINT16) sizeof (NVME_NAMESPACE_DEVICE_PATH) - ); + Nvme = (NVME_NAMESPACE_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_NVME_NAMESPACE_DP, + (UINT16)sizeof (NVME_NAMESPACE_DEVICE_PATH) + ); - Nvme->NamespaceId = (UINT32) Strtoi (NamespaceIdStr); - Uuid = (UINT8 *) &Nvme->NamespaceUuid; + Nvme->NamespaceId = (UINT32)Strtoi (NamespaceIdStr); + Uuid = (UINT8 *)&Nvme->NamespaceUuid; Index = sizeof (Nvme->NamespaceUuid) / sizeof (UINT8); while (Index-- != 0) { - Uuid[Index] = (UINT8) StrHexToUintn (SplitStr (&NamespaceUuidStr, L'-')); + Uuid[Index] = (UINT8)StrHexToUintn (SplitStr (&NamespaceUuidStr, L'-')); } - return (EFI_DEVICE_PATH_PROTOCOL *) Nvme; + return (EFI_DEVICE_PATH_PROTOCOL *)Nvme; } /** @@ -1668,25 +1684,25 @@ DevPathFromTextNVMe ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUfs ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *PunStr; - CHAR16 *LunStr; - UFS_DEVICE_PATH *Ufs; + CHAR16 *PunStr; + CHAR16 *LunStr; + UFS_DEVICE_PATH *Ufs; PunStr = GetNextParamStr (&TextDeviceNode); LunStr = GetNextParamStr (&TextDeviceNode); - Ufs = (UFS_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_UFS_DP, - (UINT16) sizeof (UFS_DEVICE_PATH) - ); + Ufs = (UFS_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_UFS_DP, + (UINT16)sizeof (UFS_DEVICE_PATH) + ); - Ufs->Pun = (UINT8) Strtoi (PunStr); - Ufs->Lun = (UINT8) Strtoi (LunStr); + Ufs->Pun = (UINT8)Strtoi (PunStr); + Ufs->Lun = (UINT8)Strtoi (LunStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Ufs; + return (EFI_DEVICE_PATH_PROTOCOL *)Ufs; } /** @@ -1699,22 +1715,22 @@ DevPathFromTextUfs ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextSd ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *SlotNumberStr; - SD_DEVICE_PATH *Sd; + CHAR16 *SlotNumberStr; + SD_DEVICE_PATH *Sd; SlotNumberStr = GetNextParamStr (&TextDeviceNode); - Sd = (SD_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_SD_DP, - (UINT16) sizeof (SD_DEVICE_PATH) - ); + Sd = (SD_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_SD_DP, + (UINT16)sizeof (SD_DEVICE_PATH) + ); - Sd->SlotNumber = (UINT8) Strtoi (SlotNumberStr); + Sd->SlotNumber = (UINT8)Strtoi (SlotNumberStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Sd; + return (EFI_DEVICE_PATH_PROTOCOL *)Sd; } /** @@ -1727,22 +1743,22 @@ DevPathFromTextSd ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextEmmc ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *SlotNumberStr; EMMC_DEVICE_PATH *Emmc; SlotNumberStr = GetNextParamStr (&TextDeviceNode); - Emmc = (EMMC_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_EMMC_DP, - (UINT16) sizeof (EMMC_DEVICE_PATH) - ); + Emmc = (EMMC_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_EMMC_DP, + (UINT16)sizeof (EMMC_DEVICE_PATH) + ); - Emmc->SlotNumber = (UINT8) Strtoi (SlotNumberStr); + Emmc->SlotNumber = (UINT8)Strtoi (SlotNumberStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Emmc; + return (EFI_DEVICE_PATH_PROTOCOL *)Emmc; } /** @@ -1755,20 +1771,20 @@ DevPathFromTextEmmc ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextDebugPort ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { VENDOR_DEVICE_PATH *Vend; - Vend = (VENDOR_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VENDOR_DP, - (UINT16) sizeof (VENDOR_DEVICE_PATH) - ); + Vend = (VENDOR_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VENDOR_DP, + (UINT16)sizeof (VENDOR_DEVICE_PATH) + ); CopyGuid (&Vend->Guid, &gEfiDebugPortProtocolGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) Vend; + return (EFI_DEVICE_PATH_PROTOCOL *)Vend; } /** @@ -1781,7 +1797,7 @@ DevPathFromTextDebugPort ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextMAC ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *AddressStr; @@ -1789,27 +1805,26 @@ DevPathFromTextMAC ( UINTN Length; MAC_ADDR_DEVICE_PATH *MACDevPath; - AddressStr = GetNextParamStr (&TextDeviceNode); - IfTypeStr = GetNextParamStr (&TextDeviceNode); - MACDevPath = (MAC_ADDR_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_MAC_ADDR_DP, - (UINT16) sizeof (MAC_ADDR_DEVICE_PATH) - ); + AddressStr = GetNextParamStr (&TextDeviceNode); + IfTypeStr = GetNextParamStr (&TextDeviceNode); + MACDevPath = (MAC_ADDR_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_MAC_ADDR_DP, + (UINT16)sizeof (MAC_ADDR_DEVICE_PATH) + ); - MACDevPath->IfType = (UINT8) Strtoi (IfTypeStr); + MACDevPath->IfType = (UINT8)Strtoi (IfTypeStr); Length = sizeof (EFI_MAC_ADDRESS); - if (MACDevPath->IfType == 0x01 || MACDevPath->IfType == 0x00) { + if ((MACDevPath->IfType == 0x01) || (MACDevPath->IfType == 0x00)) { Length = 6; } StrHexToBytes (AddressStr, Length * 2, MACDevPath->MacAddress.Addr, Length); - return (EFI_DEVICE_PATH_PROTOCOL *) MACDevPath; + return (EFI_DEVICE_PATH_PROTOCOL *)MACDevPath; } - /** Converts a text format to the network protocol ID. @@ -1820,7 +1835,7 @@ DevPathFromTextMAC ( **/ UINTN NetworkProtocolFromText ( - IN CHAR16 *Text + IN CHAR16 *Text ) { if (StrCmp (Text, L"UDP") == 0) { @@ -1834,7 +1849,6 @@ NetworkProtocolFromText ( return Strtoi (Text); } - /** Converts a text device path node to IPV4 device path structure. @@ -1845,7 +1859,7 @@ NetworkProtocolFromText ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextIPv4 ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *RemoteIPStr; @@ -1856,20 +1870,20 @@ DevPathFromTextIPv4 ( CHAR16 *SubnetMaskStr; IPv4_DEVICE_PATH *IPv4; - RemoteIPStr = GetNextParamStr (&TextDeviceNode); - ProtocolStr = GetNextParamStr (&TextDeviceNode); - TypeStr = GetNextParamStr (&TextDeviceNode); - LocalIPStr = GetNextParamStr (&TextDeviceNode); - GatewayIPStr = GetNextParamStr (&TextDeviceNode); - SubnetMaskStr = GetNextParamStr (&TextDeviceNode); - IPv4 = (IPv4_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_IPv4_DP, - (UINT16) sizeof (IPv4_DEVICE_PATH) - ); + RemoteIPStr = GetNextParamStr (&TextDeviceNode); + ProtocolStr = GetNextParamStr (&TextDeviceNode); + TypeStr = GetNextParamStr (&TextDeviceNode); + LocalIPStr = GetNextParamStr (&TextDeviceNode); + GatewayIPStr = GetNextParamStr (&TextDeviceNode); + SubnetMaskStr = GetNextParamStr (&TextDeviceNode); + IPv4 = (IPv4_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_IPv4_DP, + (UINT16)sizeof (IPv4_DEVICE_PATH) + ); StrToIpv4Address (RemoteIPStr, NULL, &IPv4->RemoteIpAddress, NULL); - IPv4->Protocol = (UINT16) NetworkProtocolFromText (ProtocolStr); + IPv4->Protocol = (UINT16)NetworkProtocolFromText (ProtocolStr); if (StrCmp (TypeStr, L"Static") == 0) { IPv4->StaticIpAddress = TRUE; } else { @@ -1878,17 +1892,17 @@ DevPathFromTextIPv4 ( StrToIpv4Address (LocalIPStr, NULL, &IPv4->LocalIpAddress, NULL); if (!IS_NULL (*GatewayIPStr) && !IS_NULL (*SubnetMaskStr)) { - StrToIpv4Address (GatewayIPStr, NULL, &IPv4->GatewayIpAddress, NULL); - StrToIpv4Address (SubnetMaskStr, NULL, &IPv4->SubnetMask, NULL); + StrToIpv4Address (GatewayIPStr, NULL, &IPv4->GatewayIpAddress, NULL); + StrToIpv4Address (SubnetMaskStr, NULL, &IPv4->SubnetMask, NULL); } else { ZeroMem (&IPv4->GatewayIpAddress, sizeof (IPv4->GatewayIpAddress)); - ZeroMem (&IPv4->SubnetMask, sizeof (IPv4->SubnetMask)); + ZeroMem (&IPv4->SubnetMask, sizeof (IPv4->SubnetMask)); } - IPv4->LocalPort = 0; - IPv4->RemotePort = 0; + IPv4->LocalPort = 0; + IPv4->RemotePort = 0; - return (EFI_DEVICE_PATH_PROTOCOL *) IPv4; + return (EFI_DEVICE_PATH_PROTOCOL *)IPv4; } /** @@ -1901,7 +1915,7 @@ DevPathFromTextIPv4 ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextIPv6 ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *RemoteIPStr; @@ -1912,20 +1926,20 @@ DevPathFromTextIPv6 ( CHAR16 *PrefixLengthStr; IPv6_DEVICE_PATH *IPv6; - RemoteIPStr = GetNextParamStr (&TextDeviceNode); - ProtocolStr = GetNextParamStr (&TextDeviceNode); - TypeStr = GetNextParamStr (&TextDeviceNode); - LocalIPStr = GetNextParamStr (&TextDeviceNode); - PrefixLengthStr = GetNextParamStr (&TextDeviceNode); - GatewayIPStr = GetNextParamStr (&TextDeviceNode); - IPv6 = (IPv6_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_IPv6_DP, - (UINT16) sizeof (IPv6_DEVICE_PATH) - ); + RemoteIPStr = GetNextParamStr (&TextDeviceNode); + ProtocolStr = GetNextParamStr (&TextDeviceNode); + TypeStr = GetNextParamStr (&TextDeviceNode); + LocalIPStr = GetNextParamStr (&TextDeviceNode); + PrefixLengthStr = GetNextParamStr (&TextDeviceNode); + GatewayIPStr = GetNextParamStr (&TextDeviceNode); + IPv6 = (IPv6_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_IPv6_DP, + (UINT16)sizeof (IPv6_DEVICE_PATH) + ); StrToIpv6Address (RemoteIPStr, NULL, &IPv6->RemoteIpAddress, NULL); - IPv6->Protocol = (UINT16) NetworkProtocolFromText (ProtocolStr); + IPv6->Protocol = (UINT16)NetworkProtocolFromText (ProtocolStr); if (StrCmp (TypeStr, L"Static") == 0) { IPv6->IpAddressOrigin = 0; } else if (StrCmp (TypeStr, L"StatelessAutoConfigure") == 0) { @@ -1937,16 +1951,16 @@ DevPathFromTextIPv6 ( StrToIpv6Address (LocalIPStr, NULL, &IPv6->LocalIpAddress, NULL); if (!IS_NULL (*GatewayIPStr) && !IS_NULL (*PrefixLengthStr)) { StrToIpv6Address (GatewayIPStr, NULL, &IPv6->GatewayIpAddress, NULL); - IPv6->PrefixLength = (UINT8) Strtoi (PrefixLengthStr); + IPv6->PrefixLength = (UINT8)Strtoi (PrefixLengthStr); } else { ZeroMem (&IPv6->GatewayIpAddress, sizeof (IPv6->GatewayIpAddress)); IPv6->PrefixLength = 0; } - IPv6->LocalPort = 0; - IPv6->RemotePort = 0; + IPv6->LocalPort = 0; + IPv6->RemotePort = 0; - return (EFI_DEVICE_PATH_PROTOCOL *) IPv6; + return (EFI_DEVICE_PATH_PROTOCOL *)IPv6; } /** @@ -1959,7 +1973,7 @@ DevPathFromTextIPv6 ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUart ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *BaudStr; @@ -1968,65 +1982,66 @@ DevPathFromTextUart ( CHAR16 *StopBitsStr; UART_DEVICE_PATH *Uart; - BaudStr = GetNextParamStr (&TextDeviceNode); - DataBitsStr = GetNextParamStr (&TextDeviceNode); - ParityStr = GetNextParamStr (&TextDeviceNode); - StopBitsStr = GetNextParamStr (&TextDeviceNode); - Uart = (UART_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_UART_DP, - (UINT16) sizeof (UART_DEVICE_PATH) - ); + BaudStr = GetNextParamStr (&TextDeviceNode); + DataBitsStr = GetNextParamStr (&TextDeviceNode); + ParityStr = GetNextParamStr (&TextDeviceNode); + StopBitsStr = GetNextParamStr (&TextDeviceNode); + Uart = (UART_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_UART_DP, + (UINT16)sizeof (UART_DEVICE_PATH) + ); if (StrCmp (BaudStr, L"DEFAULT") == 0) { Uart->BaudRate = 115200; } else { Strtoi64 (BaudStr, &Uart->BaudRate); } - Uart->DataBits = (UINT8) ((StrCmp (DataBitsStr, L"DEFAULT") == 0) ? 8 : Strtoi (DataBitsStr)); + + Uart->DataBits = (UINT8)((StrCmp (DataBitsStr, L"DEFAULT") == 0) ? 8 : Strtoi (DataBitsStr)); switch (*ParityStr) { - case L'D': - Uart->Parity = 0; - break; + case L'D': + Uart->Parity = 0; + break; - case L'N': - Uart->Parity = 1; - break; + case L'N': + Uart->Parity = 1; + break; - case L'E': - Uart->Parity = 2; - break; + case L'E': + Uart->Parity = 2; + break; - case L'O': - Uart->Parity = 3; - break; + case L'O': + Uart->Parity = 3; + break; - case L'M': - Uart->Parity = 4; - break; + case L'M': + Uart->Parity = 4; + break; - case L'S': - Uart->Parity = 5; - break; + case L'S': + Uart->Parity = 5; + break; - default: - Uart->Parity = (UINT8) Strtoi (ParityStr); - break; + default: + Uart->Parity = (UINT8)Strtoi (ParityStr); + break; } if (StrCmp (StopBitsStr, L"D") == 0) { - Uart->StopBits = (UINT8) 0; + Uart->StopBits = (UINT8)0; } else if (StrCmp (StopBitsStr, L"1") == 0) { - Uart->StopBits = (UINT8) 1; + Uart->StopBits = (UINT8)1; } else if (StrCmp (StopBitsStr, L"1.5") == 0) { - Uart->StopBits = (UINT8) 2; + Uart->StopBits = (UINT8)2; } else if (StrCmp (StopBitsStr, L"2") == 0) { - Uart->StopBits = (UINT8) 3; + Uart->StopBits = (UINT8)3; } else { - Uart->StopBits = (UINT8) Strtoi (StopBitsStr); + Uart->StopBits = (UINT8)Strtoi (StopBitsStr); } - return (EFI_DEVICE_PATH_PROTOCOL *) Uart; + return (EFI_DEVICE_PATH_PROTOCOL *)Uart; } /** @@ -2040,47 +2055,69 @@ DevPathFromTextUart ( **/ EFI_DEVICE_PATH_PROTOCOL * ConvertFromTextUsbClass ( - IN CHAR16 *TextDeviceNode, - IN USB_CLASS_TEXT *UsbClassText + IN CHAR16 *TextDeviceNode, + IN USB_CLASS_TEXT *UsbClassText ) { - CHAR16 *VIDStr; - CHAR16 *PIDStr; - CHAR16 *ClassStr; - CHAR16 *SubClassStr; - CHAR16 *ProtocolStr; - USB_CLASS_DEVICE_PATH *UsbClass; + CHAR16 *VIDStr; + CHAR16 *PIDStr; + CHAR16 *ClassStr; + CHAR16 *SubClassStr; + CHAR16 *ProtocolStr; + USB_CLASS_DEVICE_PATH *UsbClass; - UsbClass = (USB_CLASS_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_USB_CLASS_DP, - (UINT16) sizeof (USB_CLASS_DEVICE_PATH) - ); + UsbClass = (USB_CLASS_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_USB_CLASS_DP, + (UINT16)sizeof (USB_CLASS_DEVICE_PATH) + ); - VIDStr = GetNextParamStr (&TextDeviceNode); - PIDStr = GetNextParamStr (&TextDeviceNode); + VIDStr = GetNextParamStr (&TextDeviceNode); + PIDStr = GetNextParamStr (&TextDeviceNode); if (UsbClassText->ClassExist) { ClassStr = GetNextParamStr (&TextDeviceNode); - UsbClass->DeviceClass = (UINT8) Strtoi (ClassStr); + if (*ClassStr == L'\0') { + UsbClass->DeviceClass = 0xFF; + } else { + UsbClass->DeviceClass = (UINT8)Strtoi (ClassStr); + } } else { UsbClass->DeviceClass = UsbClassText->Class; } + if (UsbClassText->SubClassExist) { SubClassStr = GetNextParamStr (&TextDeviceNode); - UsbClass->DeviceSubClass = (UINT8) Strtoi (SubClassStr); + if (*SubClassStr == L'\0') { + UsbClass->DeviceSubClass = 0xFF; + } else { + UsbClass->DeviceSubClass = (UINT8)Strtoi (SubClassStr); + } } else { UsbClass->DeviceSubClass = UsbClassText->SubClass; } ProtocolStr = GetNextParamStr (&TextDeviceNode); - UsbClass->VendorId = (UINT16) Strtoi (VIDStr); - UsbClass->ProductId = (UINT16) Strtoi (PIDStr); - UsbClass->DeviceProtocol = (UINT8) Strtoi (ProtocolStr); + if (*VIDStr == L'\0') { + UsbClass->VendorId = 0xFFFF; + } else { + UsbClass->VendorId = (UINT16)Strtoi (VIDStr); + } - return (EFI_DEVICE_PATH_PROTOCOL *) UsbClass; -} + if (*PIDStr == L'\0') { + UsbClass->ProductId = 0xFFFF; + } else { + UsbClass->ProductId = (UINT16)Strtoi (PIDStr); + } + + if (*ProtocolStr == L'\0') { + UsbClass->DeviceProtocol = 0xFF; + } else { + UsbClass->DeviceProtocol = (UINT8)Strtoi (ProtocolStr); + } + return (EFI_DEVICE_PATH_PROTOCOL *)UsbClass; +} /** Converts a text device path node to USB class device path structure. @@ -2092,7 +2129,7 @@ ConvertFromTextUsbClass ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbClass ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2113,7 +2150,7 @@ DevPathFromTextUsbClass ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbAudio ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2135,7 +2172,7 @@ DevPathFromTextUsbAudio ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbCDCControl ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2157,7 +2194,7 @@ DevPathFromTextUsbCDCControl ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbHID ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2179,7 +2216,7 @@ DevPathFromTextUsbHID ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbImage ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2201,7 +2238,7 @@ DevPathFromTextUsbImage ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbPrinter ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2223,7 +2260,7 @@ DevPathFromTextUsbPrinter ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbMassStorage ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2245,7 +2282,7 @@ DevPathFromTextUsbMassStorage ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbHub ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2267,7 +2304,7 @@ DevPathFromTextUsbHub ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbCDCData ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2289,7 +2326,7 @@ DevPathFromTextUsbCDCData ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbSmartCard ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2311,7 +2348,7 @@ DevPathFromTextUsbSmartCard ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbVideo ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2333,7 +2370,7 @@ DevPathFromTextUsbVideo ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbDiagnostic ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2355,7 +2392,7 @@ DevPathFromTextUsbDiagnostic ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbWireless ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2377,7 +2414,7 @@ DevPathFromTextUsbWireless ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbDeviceFirmwareUpdate ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2400,7 +2437,7 @@ DevPathFromTextUsbDeviceFirmwareUpdate ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbIrdaBridge ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2423,7 +2460,7 @@ DevPathFromTextUsbIrdaBridge ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbTestAndMeasurement ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { USB_CLASS_TEXT UsbClassText; @@ -2446,7 +2483,7 @@ DevPathFromTextUsbTestAndMeasurement ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUsbWwid ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *VIDStr; @@ -2456,39 +2493,41 @@ DevPathFromTextUsbWwid ( USB_WWID_DEVICE_PATH *UsbWwid; UINTN SerialNumberStrLen; - VIDStr = GetNextParamStr (&TextDeviceNode); - PIDStr = GetNextParamStr (&TextDeviceNode); - InterfaceNumStr = GetNextParamStr (&TextDeviceNode); - SerialNumberStr = GetNextParamStr (&TextDeviceNode); - SerialNumberStrLen = StrLen (SerialNumberStr); - if (SerialNumberStrLen >= 2 && - SerialNumberStr[0] == L'\"' && - SerialNumberStr[SerialNumberStrLen - 1] == L'\"' - ) { + VIDStr = GetNextParamStr (&TextDeviceNode); + PIDStr = GetNextParamStr (&TextDeviceNode); + InterfaceNumStr = GetNextParamStr (&TextDeviceNode); + SerialNumberStr = GetNextParamStr (&TextDeviceNode); + SerialNumberStrLen = StrLen (SerialNumberStr); + if ((SerialNumberStrLen >= 2) && + (SerialNumberStr[0] == L'\"') && + (SerialNumberStr[SerialNumberStrLen - 1] == L'\"') + ) + { SerialNumberStr[SerialNumberStrLen - 1] = L'\0'; SerialNumberStr++; SerialNumberStrLen -= 2; } - UsbWwid = (USB_WWID_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_USB_WWID_DP, - (UINT16) (sizeof (USB_WWID_DEVICE_PATH) + SerialNumberStrLen * sizeof (CHAR16)) - ); - UsbWwid->VendorId = (UINT16) Strtoi (VIDStr); - UsbWwid->ProductId = (UINT16) Strtoi (PIDStr); - UsbWwid->InterfaceNumber = (UINT16) Strtoi (InterfaceNumStr); + + UsbWwid = (USB_WWID_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_USB_WWID_DP, + (UINT16)(sizeof (USB_WWID_DEVICE_PATH) + SerialNumberStrLen * sizeof (CHAR16)) + ); + UsbWwid->VendorId = (UINT16)Strtoi (VIDStr); + UsbWwid->ProductId = (UINT16)Strtoi (PIDStr); + UsbWwid->InterfaceNumber = (UINT16)Strtoi (InterfaceNumStr); // // There is no memory allocated in UsbWwid for the '\0' in SerialNumberStr. // Therefore, the '\0' will not be copied. // CopyMem ( - (UINT8 *) UsbWwid + sizeof (USB_WWID_DEVICE_PATH), + (UINT8 *)UsbWwid + sizeof (USB_WWID_DEVICE_PATH), SerialNumberStr, SerialNumberStrLen * sizeof (CHAR16) ); - return (EFI_DEVICE_PATH_PROTOCOL *) UsbWwid; + return (EFI_DEVICE_PATH_PROTOCOL *)UsbWwid; } /** @@ -2501,22 +2540,22 @@ DevPathFromTextUsbWwid ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUnit ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *LunStr; - DEVICE_LOGICAL_UNIT_DEVICE_PATH *LogicalUnit; + CHAR16 *LunStr; + DEVICE_LOGICAL_UNIT_DEVICE_PATH *LogicalUnit; LunStr = GetNextParamStr (&TextDeviceNode); - LogicalUnit = (DEVICE_LOGICAL_UNIT_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_DEVICE_LOGICAL_UNIT_DP, - (UINT16) sizeof (DEVICE_LOGICAL_UNIT_DEVICE_PATH) - ); + LogicalUnit = (DEVICE_LOGICAL_UNIT_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_DEVICE_LOGICAL_UNIT_DP, + (UINT16)sizeof (DEVICE_LOGICAL_UNIT_DEVICE_PATH) + ); - LogicalUnit->Lun = (UINT8) Strtoi (LunStr); + LogicalUnit->Lun = (UINT8)Strtoi (LunStr); - return (EFI_DEVICE_PATH_PROTOCOL *) LogicalUnit; + return (EFI_DEVICE_PATH_PROTOCOL *)LogicalUnit; } /** @@ -2529,20 +2568,20 @@ DevPathFromTextUnit ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextiSCSI ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - UINT16 Options; - CHAR16 *NameStr; - CHAR16 *PortalGroupStr; - CHAR16 *LunStr; - CHAR16 *HeaderDigestStr; - CHAR16 *DataDigestStr; - CHAR16 *AuthenticationStr; - CHAR16 *ProtocolStr; - CHAR8 *AsciiStr; - ISCSI_DEVICE_PATH_WITH_NAME *ISCSIDevPath; - UINT64 Lun; + UINT16 Options; + CHAR16 *NameStr; + CHAR16 *PortalGroupStr; + CHAR16 *LunStr; + CHAR16 *HeaderDigestStr; + CHAR16 *DataDigestStr; + CHAR16 *AuthenticationStr; + CHAR16 *ProtocolStr; + CHAR8 *AsciiStr; + ISCSI_DEVICE_PATH_WITH_NAME *ISCSIDevPath; + UINT64 Lun; NameStr = GetNextParamStr (&TextDeviceNode); PortalGroupStr = GetNextParamStr (&TextDeviceNode); @@ -2551,18 +2590,18 @@ DevPathFromTextiSCSI ( DataDigestStr = GetNextParamStr (&TextDeviceNode); AuthenticationStr = GetNextParamStr (&TextDeviceNode); ProtocolStr = GetNextParamStr (&TextDeviceNode); - ISCSIDevPath = (ISCSI_DEVICE_PATH_WITH_NAME *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_ISCSI_DP, - (UINT16) (sizeof (ISCSI_DEVICE_PATH_WITH_NAME) + StrLen (NameStr)) - ); + ISCSIDevPath = (ISCSI_DEVICE_PATH_WITH_NAME *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_ISCSI_DP, + (UINT16)(sizeof (ISCSI_DEVICE_PATH_WITH_NAME) + StrLen (NameStr)) + ); AsciiStr = ISCSIDevPath->TargetName; StrToAscii (NameStr, &AsciiStr); - ISCSIDevPath->TargetPortalGroupTag = (UINT16) Strtoi (PortalGroupStr); + ISCSIDevPath->TargetPortalGroupTag = (UINT16)Strtoi (PortalGroupStr); Strtoi64 (LunStr, &Lun); - WriteUnaligned64 ((UINT64 *) &ISCSIDevPath->Lun, SwapBytes64 (Lun)); + WriteUnaligned64 ((UINT64 *)&ISCSIDevPath->Lun, SwapBytes64 (Lun)); Options = 0x0000; if (StrCmp (HeaderDigestStr, L"CRC32C") == 0) { @@ -2581,7 +2620,7 @@ DevPathFromTextiSCSI ( Options |= 0x1000; } - ISCSIDevPath->LoginOption = (UINT16) Options; + ISCSIDevPath->LoginOption = (UINT16)Options; if (IS_NULL (*ProtocolStr) || (StrCmp (ProtocolStr, L"TCP") == 0)) { ISCSIDevPath->NetworkProtocol = 0; @@ -2592,7 +2631,7 @@ DevPathFromTextiSCSI ( ISCSIDevPath->NetworkProtocol = 1; } - return (EFI_DEVICE_PATH_PROTOCOL *) ISCSIDevPath; + return (EFI_DEVICE_PATH_PROTOCOL *)ISCSIDevPath; } /** @@ -2605,22 +2644,22 @@ DevPathFromTextiSCSI ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVlan ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *VlanStr; VLAN_DEVICE_PATH *Vlan; VlanStr = GetNextParamStr (&TextDeviceNode); - Vlan = (VLAN_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_VLAN_DP, - (UINT16) sizeof (VLAN_DEVICE_PATH) - ); + Vlan = (VLAN_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_VLAN_DP, + (UINT16)sizeof (VLAN_DEVICE_PATH) + ); - Vlan->VlanId = (UINT16) Strtoi (VlanStr); + Vlan->VlanId = (UINT16)Strtoi (VlanStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Vlan; + return (EFI_DEVICE_PATH_PROTOCOL *)Vlan; } /** @@ -2633,25 +2672,25 @@ DevPathFromTextVlan ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextBluetooth ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *BluetoothStr; - BLUETOOTH_DEVICE_PATH *BluetoothDp; + CHAR16 *BluetoothStr; + BLUETOOTH_DEVICE_PATH *BluetoothDp; BluetoothStr = GetNextParamStr (&TextDeviceNode); - BluetoothDp = (BLUETOOTH_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_BLUETOOTH_DP, - (UINT16) sizeof (BLUETOOTH_DEVICE_PATH) - ); + BluetoothDp = (BLUETOOTH_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_BLUETOOTH_DP, + (UINT16)sizeof (BLUETOOTH_DEVICE_PATH) + ); StrHexToBytes ( BluetoothStr, sizeof (BLUETOOTH_ADDRESS) * 2, BluetoothDp->BD_ADDR.Address, sizeof (BLUETOOTH_ADDRESS) ); - return (EFI_DEVICE_PATH_PROTOCOL *) BluetoothDp; + return (EFI_DEVICE_PATH_PROTOCOL *)BluetoothDp; } /** @@ -2664,20 +2703,20 @@ DevPathFromTextBluetooth ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextWiFi ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *SSIdStr; - CHAR8 AsciiStr[33]; - UINTN DataLen; - WIFI_DEVICE_PATH *WiFiDp; + CHAR16 *SSIdStr; + CHAR8 AsciiStr[33]; + UINTN DataLen; + WIFI_DEVICE_PATH *WiFiDp; SSIdStr = GetNextParamStr (&TextDeviceNode); - WiFiDp = (WIFI_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_WIFI_DP, - (UINT16) sizeof (WIFI_DEVICE_PATH) - ); + WiFiDp = (WIFI_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_WIFI_DP, + (UINT16)sizeof (WIFI_DEVICE_PATH) + ); if (NULL != SSIdStr) { DataLen = StrLen (SSIdStr); @@ -2690,7 +2729,7 @@ DevPathFromTextWiFi ( CopyMem (WiFiDp->SSId, AsciiStr, DataLen); } - return (EFI_DEVICE_PATH_PROTOCOL *) WiFiDp; + return (EFI_DEVICE_PATH_PROTOCOL *)WiFiDp; } /** @@ -2703,27 +2742,29 @@ DevPathFromTextWiFi ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextBluetoothLE ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *BluetoothLeAddrStr; - CHAR16 *BluetoothLeAddrTypeStr; - BLUETOOTH_LE_DEVICE_PATH *BluetoothLeDp; + CHAR16 *BluetoothLeAddrStr; + CHAR16 *BluetoothLeAddrTypeStr; + BLUETOOTH_LE_DEVICE_PATH *BluetoothLeDp; BluetoothLeAddrStr = GetNextParamStr (&TextDeviceNode); BluetoothLeAddrTypeStr = GetNextParamStr (&TextDeviceNode); - BluetoothLeDp = (BLUETOOTH_LE_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_BLUETOOTH_LE_DP, - (UINT16) sizeof (BLUETOOTH_LE_DEVICE_PATH) - ); + BluetoothLeDp = (BLUETOOTH_LE_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_BLUETOOTH_LE_DP, + (UINT16)sizeof (BLUETOOTH_LE_DEVICE_PATH) + ); - BluetoothLeDp->Address.Type = (UINT8) Strtoi (BluetoothLeAddrTypeStr); + BluetoothLeDp->Address.Type = (UINT8)Strtoi (BluetoothLeAddrTypeStr); StrHexToBytes ( - BluetoothLeAddrStr, sizeof (BluetoothLeDp->Address.Address) * 2, - BluetoothLeDp->Address.Address, sizeof (BluetoothLeDp->Address.Address) + BluetoothLeAddrStr, + sizeof (BluetoothLeDp->Address.Address) * 2, + BluetoothLeDp->Address.Address, + sizeof (BluetoothLeDp->Address.Address) ); - return (EFI_DEVICE_PATH_PROTOCOL *) BluetoothLeDp; + return (EFI_DEVICE_PATH_PROTOCOL *)BluetoothLeDp; } /** @@ -2736,17 +2777,16 @@ DevPathFromTextBluetoothLE ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextDns ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *DeviceNodeStr; - CHAR16 *DeviceNodeStrPtr; - UINT32 DnsServerIpCount; - UINT16 DnsDeviceNodeLength; - DNS_DEVICE_PATH *DnsDeviceNode; - UINT32 DnsServerIpIndex; - CHAR16 *DnsServerIp; - + CHAR16 *DeviceNodeStr; + CHAR16 *DeviceNodeStrPtr; + UINT32 DnsServerIpCount; + UINT16 DnsDeviceNodeLength; + DNS_DEVICE_PATH *DnsDeviceNode; + UINT32 DnsServerIpIndex; + CHAR16 *DnsServerIp; // // Count the DNS server address number. @@ -2761,7 +2801,7 @@ DevPathFromTextDns ( DnsServerIpCount = 0; while (DeviceNodeStrPtr != NULL && *DeviceNodeStrPtr != L'\0') { GetNextParamStr (&DeviceNodeStrPtr); - DnsServerIpCount ++; + DnsServerIpCount++; } FreePool (DeviceNodeStr); @@ -2778,12 +2818,12 @@ DevPathFromTextDns ( // // Create the DNS DeviceNode. // - DnsDeviceNodeLength = (UINT16) (sizeof (EFI_DEVICE_PATH_PROTOCOL) + sizeof (UINT8) + DnsServerIpCount * sizeof (EFI_IP_ADDRESS)); - DnsDeviceNode = (DNS_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_DNS_DP, - DnsDeviceNodeLength - ); + DnsDeviceNodeLength = (UINT16)(sizeof (EFI_DEVICE_PATH_PROTOCOL) + sizeof (UINT8) + DnsServerIpCount * sizeof (EFI_IP_ADDRESS)); + DnsDeviceNode = (DNS_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_DNS_DP, + DnsDeviceNodeLength + ); if (DnsDeviceNode == NULL) { return NULL; } @@ -2809,13 +2849,13 @@ DevPathFromTextDns ( for (DnsServerIpIndex = 0; DnsServerIpIndex < DnsServerIpCount; DnsServerIpIndex++) { DnsServerIp = GetNextParamStr (&TextDeviceNode); if (DnsDeviceNode->IsIPv6 == 0x00) { - StrToIpv4Address (DnsServerIp, NULL, &(DnsDeviceNode->DnsServerIp[DnsServerIpIndex].v4), NULL); + StrToIpv4Address (DnsServerIp, NULL, &(DnsDeviceNode->DnsServerIp[DnsServerIpIndex].v4), NULL); } else { StrToIpv6Address (DnsServerIp, NULL, &(DnsDeviceNode->DnsServerIp[DnsServerIpIndex].v6), NULL); } } - return (EFI_DEVICE_PATH_PROTOCOL *) DnsDeviceNode; + return (EFI_DEVICE_PATH_PROTOCOL *)DnsDeviceNode; } /** @@ -2828,26 +2868,26 @@ DevPathFromTextDns ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextUri ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *UriStr; UINTN UriLength; URI_DEVICE_PATH *Uri; - UriStr = GetNextParamStr (&TextDeviceNode); + UriStr = GetNextParamStr (&TextDeviceNode); UriLength = StrnLenS (UriStr, MAX_UINT16 - sizeof (URI_DEVICE_PATH)); - Uri = (URI_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_URI_DP, - (UINT16) (sizeof (URI_DEVICE_PATH) + UriLength) - ); + Uri = (URI_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_URI_DP, + (UINT16)(sizeof (URI_DEVICE_PATH) + UriLength) + ); while (UriLength-- != 0) { - Uri->Uri[UriLength] = (CHAR8) UriStr[UriLength]; + Uri->Uri[UriLength] = (CHAR8)UriStr[UriLength]; } - return (EFI_DEVICE_PATH_PROTOCOL *) Uri; + return (EFI_DEVICE_PATH_PROTOCOL *)Uri; } /** @@ -2860,7 +2900,7 @@ DevPathFromTextUri ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextMediaPath ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return DevPathFromTextGenericPath (MEDIA_DEVICE_PATH, TextDeviceNode); @@ -2876,52 +2916,52 @@ DevPathFromTextMediaPath ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextHD ( - IN CHAR16 *TextDeviceNode - ) -{ - CHAR16 *PartitionStr; - CHAR16 *TypeStr; - CHAR16 *SignatureStr; - CHAR16 *StartStr; - CHAR16 *SizeStr; - UINT32 Signature32; - HARDDRIVE_DEVICE_PATH *Hd; - - PartitionStr = GetNextParamStr (&TextDeviceNode); - TypeStr = GetNextParamStr (&TextDeviceNode); - SignatureStr = GetNextParamStr (&TextDeviceNode); - StartStr = GetNextParamStr (&TextDeviceNode); - SizeStr = GetNextParamStr (&TextDeviceNode); - Hd = (HARDDRIVE_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_HARDDRIVE_DP, - (UINT16) sizeof (HARDDRIVE_DEVICE_PATH) - ); + IN CHAR16 *TextDeviceNode + ) +{ + CHAR16 *PartitionStr; + CHAR16 *TypeStr; + CHAR16 *SignatureStr; + CHAR16 *StartStr; + CHAR16 *SizeStr; + UINT32 Signature32; + HARDDRIVE_DEVICE_PATH *Hd; + + PartitionStr = GetNextParamStr (&TextDeviceNode); + TypeStr = GetNextParamStr (&TextDeviceNode); + SignatureStr = GetNextParamStr (&TextDeviceNode); + StartStr = GetNextParamStr (&TextDeviceNode); + SizeStr = GetNextParamStr (&TextDeviceNode); + Hd = (HARDDRIVE_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_HARDDRIVE_DP, + (UINT16)sizeof (HARDDRIVE_DEVICE_PATH) + ); - Hd->PartitionNumber = (UINT32) Strtoi (PartitionStr); + Hd->PartitionNumber = (UINT32)Strtoi (PartitionStr); ZeroMem (Hd->Signature, 16); - Hd->MBRType = (UINT8) 0; + Hd->MBRType = (UINT8)0; if (StrCmp (TypeStr, L"MBR") == 0) { Hd->SignatureType = SIGNATURE_TYPE_MBR; Hd->MBRType = 0x01; - Signature32 = (UINT32) Strtoi (SignatureStr); + Signature32 = (UINT32)Strtoi (SignatureStr); CopyMem (Hd->Signature, &Signature32, sizeof (UINT32)); } else if (StrCmp (TypeStr, L"GPT") == 0) { Hd->SignatureType = SIGNATURE_TYPE_GUID; Hd->MBRType = 0x02; - StrToGuid (SignatureStr, (EFI_GUID *) Hd->Signature); + StrToGuid (SignatureStr, (EFI_GUID *)Hd->Signature); } else { - Hd->SignatureType = (UINT8) Strtoi (TypeStr); + Hd->SignatureType = (UINT8)Strtoi (TypeStr); } Strtoi64 (StartStr, &Hd->PartitionStart); Strtoi64 (SizeStr, &Hd->PartitionSize); - return (EFI_DEVICE_PATH_PROTOCOL *) Hd; + return (EFI_DEVICE_PATH_PROTOCOL *)Hd; } /** @@ -2934,28 +2974,28 @@ DevPathFromTextHD ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextCDROM ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *EntryStr; - CHAR16 *StartStr; - CHAR16 *SizeStr; - CDROM_DEVICE_PATH *CDROMDevPath; + CHAR16 *EntryStr; + CHAR16 *StartStr; + CHAR16 *SizeStr; + CDROM_DEVICE_PATH *CDROMDevPath; - EntryStr = GetNextParamStr (&TextDeviceNode); - StartStr = GetNextParamStr (&TextDeviceNode); - SizeStr = GetNextParamStr (&TextDeviceNode); - CDROMDevPath = (CDROM_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_CDROM_DP, - (UINT16) sizeof (CDROM_DEVICE_PATH) - ); + EntryStr = GetNextParamStr (&TextDeviceNode); + StartStr = GetNextParamStr (&TextDeviceNode); + SizeStr = GetNextParamStr (&TextDeviceNode); + CDROMDevPath = (CDROM_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_CDROM_DP, + (UINT16)sizeof (CDROM_DEVICE_PATH) + ); - CDROMDevPath->BootEntry = (UINT32) Strtoi (EntryStr); + CDROMDevPath->BootEntry = (UINT32)Strtoi (EntryStr); Strtoi64 (StartStr, &CDROMDevPath->PartitionStart); Strtoi64 (SizeStr, &CDROMDevPath->PartitionSize); - return (EFI_DEVICE_PATH_PROTOCOL *) CDROMDevPath; + return (EFI_DEVICE_PATH_PROTOCOL *)CDROMDevPath; } /** @@ -2968,7 +3008,7 @@ DevPathFromTextCDROM ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVenMedia ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return ConvertFromTextVendor ( @@ -2988,20 +3028,20 @@ DevPathFromTextVenMedia ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextFilePath ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { FILEPATH_DEVICE_PATH *File; - File = (FILEPATH_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_FILEPATH_DP, - (UINT16) (sizeof (FILEPATH_DEVICE_PATH) + StrLen (TextDeviceNode) * 2) - ); + File = (FILEPATH_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_FILEPATH_DP, + (UINT16)(sizeof (FILEPATH_DEVICE_PATH) + StrLen (TextDeviceNode) * 2) + ); StrCpyS (File->PathName, StrLen (TextDeviceNode) + 1, TextDeviceNode); - return (EFI_DEVICE_PATH_PROTOCOL *) File; + return (EFI_DEVICE_PATH_PROTOCOL *)File; } /** @@ -3014,22 +3054,22 @@ DevPathFromTextFilePath ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextMedia ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *GuidStr; MEDIA_PROTOCOL_DEVICE_PATH *Media; GuidStr = GetNextParamStr (&TextDeviceNode); - Media = (MEDIA_PROTOCOL_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_PROTOCOL_DP, - (UINT16) sizeof (MEDIA_PROTOCOL_DEVICE_PATH) - ); + Media = (MEDIA_PROTOCOL_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_PROTOCOL_DP, + (UINT16)sizeof (MEDIA_PROTOCOL_DEVICE_PATH) + ); StrToGuid (GuidStr, &Media->Protocol); - return (EFI_DEVICE_PATH_PROTOCOL *) Media; + return (EFI_DEVICE_PATH_PROTOCOL *)Media; } /** @@ -3042,22 +3082,22 @@ DevPathFromTextMedia ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextFv ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *GuidStr; MEDIA_FW_VOL_DEVICE_PATH *Fv; GuidStr = GetNextParamStr (&TextDeviceNode); - Fv = (MEDIA_FW_VOL_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_PIWG_FW_VOL_DP, - (UINT16) sizeof (MEDIA_FW_VOL_DEVICE_PATH) - ); + Fv = (MEDIA_FW_VOL_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_PIWG_FW_VOL_DP, + (UINT16)sizeof (MEDIA_FW_VOL_DEVICE_PATH) + ); StrToGuid (GuidStr, &Fv->FvName); - return (EFI_DEVICE_PATH_PROTOCOL *) Fv; + return (EFI_DEVICE_PATH_PROTOCOL *)Fv; } /** @@ -3070,22 +3110,22 @@ DevPathFromTextFv ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextFvFile ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { CHAR16 *GuidStr; MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvFile; GuidStr = GetNextParamStr (&TextDeviceNode); - FvFile = (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_PIWG_FW_FILE_DP, - (UINT16) sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH) - ); + FvFile = (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_PIWG_FW_FILE_DP, + (UINT16)sizeof (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH) + ); StrToGuid (GuidStr, &FvFile->FvFileName); - return (EFI_DEVICE_PATH_PROTOCOL *) FvFile; + return (EFI_DEVICE_PATH_PROTOCOL *)FvFile; } /** @@ -3098,25 +3138,25 @@ DevPathFromTextFvFile ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextRelativeOffsetRange ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *StartingOffsetStr; - CHAR16 *EndingOffsetStr; - MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH *Offset; + CHAR16 *StartingOffsetStr; + CHAR16 *EndingOffsetStr; + MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH *Offset; StartingOffsetStr = GetNextParamStr (&TextDeviceNode); EndingOffsetStr = GetNextParamStr (&TextDeviceNode); - Offset = (MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_RELATIVE_OFFSET_RANGE_DP, - (UINT16) sizeof (MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH) - ); + Offset = (MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_RELATIVE_OFFSET_RANGE_DP, + (UINT16)sizeof (MEDIA_RELATIVE_OFFSET_RANGE_DEVICE_PATH) + ); Strtoi64 (StartingOffsetStr, &Offset->StartingOffset); Strtoi64 (EndingOffsetStr, &Offset->EndingOffset); - return (EFI_DEVICE_PATH_PROTOCOL *) Offset; + return (EFI_DEVICE_PATH_PROTOCOL *)Offset; } /** @@ -3129,35 +3169,35 @@ DevPathFromTextRelativeOffsetRange ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextRamDisk ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *StartingAddrStr; - CHAR16 *EndingAddrStr; - CHAR16 *TypeGuidStr; - CHAR16 *InstanceStr; - MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; - UINT64 StartingAddr; - UINT64 EndingAddr; + CHAR16 *StartingAddrStr; + CHAR16 *EndingAddrStr; + CHAR16 *TypeGuidStr; + CHAR16 *InstanceStr; + MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; + UINT64 StartingAddr; + UINT64 EndingAddr; StartingAddrStr = GetNextParamStr (&TextDeviceNode); EndingAddrStr = GetNextParamStr (&TextDeviceNode); InstanceStr = GetNextParamStr (&TextDeviceNode); TypeGuidStr = GetNextParamStr (&TextDeviceNode); - RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_RAM_DISK_DP, - (UINT16) sizeof (MEDIA_RAM_DISK_DEVICE_PATH) - ); + RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_RAM_DISK_DP, + (UINT16)sizeof (MEDIA_RAM_DISK_DEVICE_PATH) + ); Strtoi64 (StartingAddrStr, &StartingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->StartingAddr[0]), StartingAddr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->StartingAddr[0]), StartingAddr); Strtoi64 (EndingAddrStr, &EndingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->EndingAddr[0]), EndingAddr); - RamDisk->Instance = (UINT16) Strtoi (InstanceStr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->EndingAddr[0]), EndingAddr); + RamDisk->Instance = (UINT16)Strtoi (InstanceStr); StrToGuid (TypeGuidStr, &RamDisk->TypeGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) RamDisk; + return (EFI_DEVICE_PATH_PROTOCOL *)RamDisk; } /** @@ -3170,34 +3210,34 @@ DevPathFromTextRamDisk ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVirtualDisk ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *StartingAddrStr; - CHAR16 *EndingAddrStr; - CHAR16 *InstanceStr; - MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; - UINT64 StartingAddr; - UINT64 EndingAddr; + CHAR16 *StartingAddrStr; + CHAR16 *EndingAddrStr; + CHAR16 *InstanceStr; + MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; + UINT64 StartingAddr; + UINT64 EndingAddr; StartingAddrStr = GetNextParamStr (&TextDeviceNode); EndingAddrStr = GetNextParamStr (&TextDeviceNode); InstanceStr = GetNextParamStr (&TextDeviceNode); - RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_RAM_DISK_DP, - (UINT16) sizeof (MEDIA_RAM_DISK_DEVICE_PATH) - ); + RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_RAM_DISK_DP, + (UINT16)sizeof (MEDIA_RAM_DISK_DEVICE_PATH) + ); Strtoi64 (StartingAddrStr, &StartingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->StartingAddr[0]), StartingAddr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->StartingAddr[0]), StartingAddr); Strtoi64 (EndingAddrStr, &EndingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->EndingAddr[0]), EndingAddr); - RamDisk->Instance = (UINT16) Strtoi (InstanceStr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->EndingAddr[0]), EndingAddr); + RamDisk->Instance = (UINT16)Strtoi (InstanceStr); CopyGuid (&RamDisk->TypeGuid, &gEfiVirtualDiskGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) RamDisk; + return (EFI_DEVICE_PATH_PROTOCOL *)RamDisk; } /** @@ -3210,34 +3250,34 @@ DevPathFromTextVirtualDisk ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextVirtualCd ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *StartingAddrStr; - CHAR16 *EndingAddrStr; - CHAR16 *InstanceStr; - MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; - UINT64 StartingAddr; - UINT64 EndingAddr; + CHAR16 *StartingAddrStr; + CHAR16 *EndingAddrStr; + CHAR16 *InstanceStr; + MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; + UINT64 StartingAddr; + UINT64 EndingAddr; StartingAddrStr = GetNextParamStr (&TextDeviceNode); EndingAddrStr = GetNextParamStr (&TextDeviceNode); InstanceStr = GetNextParamStr (&TextDeviceNode); - RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_RAM_DISK_DP, - (UINT16) sizeof (MEDIA_RAM_DISK_DEVICE_PATH) - ); + RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_RAM_DISK_DP, + (UINT16)sizeof (MEDIA_RAM_DISK_DEVICE_PATH) + ); Strtoi64 (StartingAddrStr, &StartingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->StartingAddr[0]), StartingAddr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->StartingAddr[0]), StartingAddr); Strtoi64 (EndingAddrStr, &EndingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->EndingAddr[0]), EndingAddr); - RamDisk->Instance = (UINT16) Strtoi (InstanceStr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->EndingAddr[0]), EndingAddr); + RamDisk->Instance = (UINT16)Strtoi (InstanceStr); CopyGuid (&RamDisk->TypeGuid, &gEfiVirtualCdGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) RamDisk; + return (EFI_DEVICE_PATH_PROTOCOL *)RamDisk; } /** @@ -3250,34 +3290,34 @@ DevPathFromTextVirtualCd ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPersistentVirtualDisk ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *StartingAddrStr; - CHAR16 *EndingAddrStr; - CHAR16 *InstanceStr; - MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; - UINT64 StartingAddr; - UINT64 EndingAddr; + CHAR16 *StartingAddrStr; + CHAR16 *EndingAddrStr; + CHAR16 *InstanceStr; + MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; + UINT64 StartingAddr; + UINT64 EndingAddr; StartingAddrStr = GetNextParamStr (&TextDeviceNode); EndingAddrStr = GetNextParamStr (&TextDeviceNode); InstanceStr = GetNextParamStr (&TextDeviceNode); - RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_RAM_DISK_DP, - (UINT16) sizeof (MEDIA_RAM_DISK_DEVICE_PATH) - ); + RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_RAM_DISK_DP, + (UINT16)sizeof (MEDIA_RAM_DISK_DEVICE_PATH) + ); Strtoi64 (StartingAddrStr, &StartingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->StartingAddr[0]), StartingAddr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->StartingAddr[0]), StartingAddr); Strtoi64 (EndingAddrStr, &EndingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->EndingAddr[0]), EndingAddr); - RamDisk->Instance = (UINT16) Strtoi (InstanceStr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->EndingAddr[0]), EndingAddr); + RamDisk->Instance = (UINT16)Strtoi (InstanceStr); CopyGuid (&RamDisk->TypeGuid, &gEfiPersistentVirtualDiskGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) RamDisk; + return (EFI_DEVICE_PATH_PROTOCOL *)RamDisk; } /** @@ -3290,34 +3330,34 @@ DevPathFromTextPersistentVirtualDisk ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextPersistentVirtualCd ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - CHAR16 *StartingAddrStr; - CHAR16 *EndingAddrStr; - CHAR16 *InstanceStr; - MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; - UINT64 StartingAddr; - UINT64 EndingAddr; + CHAR16 *StartingAddrStr; + CHAR16 *EndingAddrStr; + CHAR16 *InstanceStr; + MEDIA_RAM_DISK_DEVICE_PATH *RamDisk; + UINT64 StartingAddr; + UINT64 EndingAddr; StartingAddrStr = GetNextParamStr (&TextDeviceNode); EndingAddrStr = GetNextParamStr (&TextDeviceNode); InstanceStr = GetNextParamStr (&TextDeviceNode); - RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *) CreateDeviceNode ( - MEDIA_DEVICE_PATH, - MEDIA_RAM_DISK_DP, - (UINT16) sizeof (MEDIA_RAM_DISK_DEVICE_PATH) - ); + RamDisk = (MEDIA_RAM_DISK_DEVICE_PATH *)CreateDeviceNode ( + MEDIA_DEVICE_PATH, + MEDIA_RAM_DISK_DP, + (UINT16)sizeof (MEDIA_RAM_DISK_DEVICE_PATH) + ); Strtoi64 (StartingAddrStr, &StartingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->StartingAddr[0]), StartingAddr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->StartingAddr[0]), StartingAddr); Strtoi64 (EndingAddrStr, &EndingAddr); - WriteUnaligned64 ((UINT64 *) &(RamDisk->EndingAddr[0]), EndingAddr); - RamDisk->Instance = (UINT16) Strtoi (InstanceStr); + WriteUnaligned64 ((UINT64 *)&(RamDisk->EndingAddr[0]), EndingAddr); + RamDisk->Instance = (UINT16)Strtoi (InstanceStr); CopyGuid (&RamDisk->TypeGuid, &gEfiPersistentVirtualCdGuid); - return (EFI_DEVICE_PATH_PROTOCOL *) RamDisk; + return (EFI_DEVICE_PATH_PROTOCOL *)RamDisk; } /** @@ -3330,7 +3370,7 @@ DevPathFromTextPersistentVirtualCd ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextBbsPath ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { return DevPathFromTextGenericPath (BBS_DEVICE_PATH, TextDeviceNode); @@ -3346,23 +3386,23 @@ DevPathFromTextBbsPath ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextBBS ( - IN CHAR16 *TextDeviceNode - ) -{ - CHAR16 *TypeStr; - CHAR16 *IdStr; - CHAR16 *FlagsStr; - CHAR8 *AsciiStr; - BBS_BBS_DEVICE_PATH *Bbs; - - TypeStr = GetNextParamStr (&TextDeviceNode); - IdStr = GetNextParamStr (&TextDeviceNode); - FlagsStr = GetNextParamStr (&TextDeviceNode); - Bbs = (BBS_BBS_DEVICE_PATH *) CreateDeviceNode ( - BBS_DEVICE_PATH, - BBS_BBS_DP, - (UINT16) (sizeof (BBS_BBS_DEVICE_PATH) + StrLen (IdStr)) - ); + IN CHAR16 *TextDeviceNode + ) +{ + CHAR16 *TypeStr; + CHAR16 *IdStr; + CHAR16 *FlagsStr; + CHAR8 *AsciiStr; + BBS_BBS_DEVICE_PATH *Bbs; + + TypeStr = GetNextParamStr (&TextDeviceNode); + IdStr = GetNextParamStr (&TextDeviceNode); + FlagsStr = GetNextParamStr (&TextDeviceNode); + Bbs = (BBS_BBS_DEVICE_PATH *)CreateDeviceNode ( + BBS_DEVICE_PATH, + BBS_BBS_DP, + (UINT16)(sizeof (BBS_BBS_DEVICE_PATH) + StrLen (IdStr)) + ); if (StrCmp (TypeStr, L"Floppy") == 0) { Bbs->DeviceType = BBS_TYPE_FLOPPY; @@ -3377,15 +3417,15 @@ DevPathFromTextBBS ( } else if (StrCmp (TypeStr, L"Network") == 0) { Bbs->DeviceType = BBS_TYPE_EMBEDDED_NETWORK; } else { - Bbs->DeviceType = (UINT16) Strtoi (TypeStr); + Bbs->DeviceType = (UINT16)Strtoi (TypeStr); } AsciiStr = Bbs->String; StrToAscii (IdStr, &AsciiStr); - Bbs->StatusFlag = (UINT16) Strtoi (FlagsStr); + Bbs->StatusFlag = (UINT16)Strtoi (FlagsStr); - return (EFI_DEVICE_PATH_PROTOCOL *) Bbs; + return (EFI_DEVICE_PATH_PROTOCOL *)Bbs; } /** @@ -3398,24 +3438,24 @@ DevPathFromTextBBS ( **/ EFI_DEVICE_PATH_PROTOCOL * DevPathFromTextSata ( - IN CHAR16 *TextDeviceNode + IN CHAR16 *TextDeviceNode ) { - SATA_DEVICE_PATH *Sata; - CHAR16 *Param1; - CHAR16 *Param2; - CHAR16 *Param3; + SATA_DEVICE_PATH *Sata; + CHAR16 *Param1; + CHAR16 *Param2; + CHAR16 *Param3; Param1 = GetNextParamStr (&TextDeviceNode); Param2 = GetNextParamStr (&TextDeviceNode); Param3 = GetNextParamStr (&TextDeviceNode); - Sata = (SATA_DEVICE_PATH *) CreateDeviceNode ( - MESSAGING_DEVICE_PATH, - MSG_SATA_DP, - (UINT16) sizeof (SATA_DEVICE_PATH) - ); - Sata->HBAPortNumber = (UINT16) Strtoi (Param1); + Sata = (SATA_DEVICE_PATH *)CreateDeviceNode ( + MESSAGING_DEVICE_PATH, + MSG_SATA_DP, + (UINT16)sizeof (SATA_DEVICE_PATH) + ); + Sata->HBAPortNumber = (UINT16)Strtoi (Param1); // // According to UEFI spec, if PMPN is not provided, the default is 0xFFFF @@ -3423,105 +3463,106 @@ DevPathFromTextSata ( if (*Param2 == L'\0' ) { Sata->PortMultiplierPortNumber = 0xFFFF; } else { - Sata->PortMultiplierPortNumber = (UINT16) Strtoi (Param2); - } - Sata->Lun = (UINT16) Strtoi (Param3); - - return (EFI_DEVICE_PATH_PROTOCOL *) Sata; -} - -GLOBAL_REMOVE_IF_UNREFERENCED DEVICE_PATH_FROM_TEXT_TABLE mUefiDevicePathLibDevPathFromTextTable[] = { - {L"Path", DevPathFromTextPath }, - - {L"HardwarePath", DevPathFromTextHardwarePath }, - {L"Pci", DevPathFromTextPci }, - {L"PcCard", DevPathFromTextPcCard }, - {L"MemoryMapped", DevPathFromTextMemoryMapped }, - {L"VenHw", DevPathFromTextVenHw }, - {L"Ctrl", DevPathFromTextCtrl }, - {L"BMC", DevPathFromTextBmc }, - - {L"AcpiPath", DevPathFromTextAcpiPath }, - {L"Acpi", DevPathFromTextAcpi }, - {L"PciRoot", DevPathFromTextPciRoot }, - {L"PcieRoot", DevPathFromTextPcieRoot }, - {L"Floppy", DevPathFromTextFloppy }, - {L"Keyboard", DevPathFromTextKeyboard }, - {L"Serial", DevPathFromTextSerial }, - {L"ParallelPort", DevPathFromTextParallelPort }, - {L"AcpiEx", DevPathFromTextAcpiEx }, - {L"AcpiExp", DevPathFromTextAcpiExp }, - {L"AcpiAdr", DevPathFromTextAcpiAdr }, - - {L"Msg", DevPathFromTextMsg }, - {L"Ata", DevPathFromTextAta }, - {L"Scsi", DevPathFromTextScsi }, - {L"Fibre", DevPathFromTextFibre }, - {L"FibreEx", DevPathFromTextFibreEx }, - {L"I1394", DevPathFromText1394 }, - {L"USB", DevPathFromTextUsb }, - {L"I2O", DevPathFromTextI2O }, - {L"Infiniband", DevPathFromTextInfiniband }, - {L"VenMsg", DevPathFromTextVenMsg }, - {L"VenPcAnsi", DevPathFromTextVenPcAnsi }, - {L"VenVt100", DevPathFromTextVenVt100 }, - {L"VenVt100Plus", DevPathFromTextVenVt100Plus }, - {L"VenUtf8", DevPathFromTextVenUtf8 }, - {L"UartFlowCtrl", DevPathFromTextUartFlowCtrl }, - {L"SAS", DevPathFromTextSAS }, - {L"SasEx", DevPathFromTextSasEx }, - {L"NVMe", DevPathFromTextNVMe }, - {L"UFS", DevPathFromTextUfs }, - {L"SD", DevPathFromTextSd }, - {L"eMMC", DevPathFromTextEmmc }, - {L"DebugPort", DevPathFromTextDebugPort }, - {L"MAC", DevPathFromTextMAC }, - {L"IPv4", DevPathFromTextIPv4 }, - {L"IPv6", DevPathFromTextIPv6 }, - {L"Uart", DevPathFromTextUart }, - {L"UsbClass", DevPathFromTextUsbClass }, - {L"UsbAudio", DevPathFromTextUsbAudio }, - {L"UsbCDCControl", DevPathFromTextUsbCDCControl }, - {L"UsbHID", DevPathFromTextUsbHID }, - {L"UsbImage", DevPathFromTextUsbImage }, - {L"UsbPrinter", DevPathFromTextUsbPrinter }, - {L"UsbMassStorage", DevPathFromTextUsbMassStorage }, - {L"UsbHub", DevPathFromTextUsbHub }, - {L"UsbCDCData", DevPathFromTextUsbCDCData }, - {L"UsbSmartCard", DevPathFromTextUsbSmartCard }, - {L"UsbVideo", DevPathFromTextUsbVideo }, - {L"UsbDiagnostic", DevPathFromTextUsbDiagnostic }, - {L"UsbWireless", DevPathFromTextUsbWireless }, - {L"UsbDeviceFirmwareUpdate", DevPathFromTextUsbDeviceFirmwareUpdate }, - {L"UsbIrdaBridge", DevPathFromTextUsbIrdaBridge }, - {L"UsbTestAndMeasurement", DevPathFromTextUsbTestAndMeasurement }, - {L"UsbWwid", DevPathFromTextUsbWwid }, - {L"Unit", DevPathFromTextUnit }, - {L"iSCSI", DevPathFromTextiSCSI }, - {L"Vlan", DevPathFromTextVlan }, - {L"Dns", DevPathFromTextDns }, - {L"Uri", DevPathFromTextUri }, - {L"Bluetooth", DevPathFromTextBluetooth }, - {L"Wi-Fi", DevPathFromTextWiFi }, - {L"BluetoothLE", DevPathFromTextBluetoothLE }, - {L"MediaPath", DevPathFromTextMediaPath }, - {L"HD", DevPathFromTextHD }, - {L"CDROM", DevPathFromTextCDROM }, - {L"VenMedia", DevPathFromTextVenMedia }, - {L"Media", DevPathFromTextMedia }, - {L"Fv", DevPathFromTextFv }, - {L"FvFile", DevPathFromTextFvFile }, - {L"Offset", DevPathFromTextRelativeOffsetRange }, - {L"RamDisk", DevPathFromTextRamDisk }, - {L"VirtualDisk", DevPathFromTextVirtualDisk }, - {L"VirtualCD", DevPathFromTextVirtualCd }, - {L"PersistentVirtualDisk", DevPathFromTextPersistentVirtualDisk }, - {L"PersistentVirtualCD", DevPathFromTextPersistentVirtualCd }, - - {L"BbsPath", DevPathFromTextBbsPath }, - {L"BBS", DevPathFromTextBBS }, - {L"Sata", DevPathFromTextSata }, - {NULL, NULL} + Sata->PortMultiplierPortNumber = (UINT16)Strtoi (Param2); + } + + Sata->Lun = (UINT16)Strtoi (Param3); + + return (EFI_DEVICE_PATH_PROTOCOL *)Sata; +} + +GLOBAL_REMOVE_IF_UNREFERENCED DEVICE_PATH_FROM_TEXT_TABLE mUefiDevicePathLibDevPathFromTextTable[] = { + { L"Path", DevPathFromTextPath }, + + { L"HardwarePath", DevPathFromTextHardwarePath }, + { L"Pci", DevPathFromTextPci }, + { L"PcCard", DevPathFromTextPcCard }, + { L"MemoryMapped", DevPathFromTextMemoryMapped }, + { L"VenHw", DevPathFromTextVenHw }, + { L"Ctrl", DevPathFromTextCtrl }, + { L"BMC", DevPathFromTextBmc }, + + { L"AcpiPath", DevPathFromTextAcpiPath }, + { L"Acpi", DevPathFromTextAcpi }, + { L"PciRoot", DevPathFromTextPciRoot }, + { L"PcieRoot", DevPathFromTextPcieRoot }, + { L"Floppy", DevPathFromTextFloppy }, + { L"Keyboard", DevPathFromTextKeyboard }, + { L"Serial", DevPathFromTextSerial }, + { L"ParallelPort", DevPathFromTextParallelPort }, + { L"AcpiEx", DevPathFromTextAcpiEx }, + { L"AcpiExp", DevPathFromTextAcpiExp }, + { L"AcpiAdr", DevPathFromTextAcpiAdr }, + + { L"Msg", DevPathFromTextMsg }, + { L"Ata", DevPathFromTextAta }, + { L"Scsi", DevPathFromTextScsi }, + { L"Fibre", DevPathFromTextFibre }, + { L"FibreEx", DevPathFromTextFibreEx }, + { L"I1394", DevPathFromText1394 }, + { L"USB", DevPathFromTextUsb }, + { L"I2O", DevPathFromTextI2O }, + { L"Infiniband", DevPathFromTextInfiniband }, + { L"VenMsg", DevPathFromTextVenMsg }, + { L"VenPcAnsi", DevPathFromTextVenPcAnsi }, + { L"VenVt100", DevPathFromTextVenVt100 }, + { L"VenVt100Plus", DevPathFromTextVenVt100Plus }, + { L"VenUtf8", DevPathFromTextVenUtf8 }, + { L"UartFlowCtrl", DevPathFromTextUartFlowCtrl }, + { L"SAS", DevPathFromTextSAS }, + { L"SasEx", DevPathFromTextSasEx }, + { L"NVMe", DevPathFromTextNVMe }, + { L"UFS", DevPathFromTextUfs }, + { L"SD", DevPathFromTextSd }, + { L"eMMC", DevPathFromTextEmmc }, + { L"DebugPort", DevPathFromTextDebugPort }, + { L"MAC", DevPathFromTextMAC }, + { L"IPv4", DevPathFromTextIPv4 }, + { L"IPv6", DevPathFromTextIPv6 }, + { L"Uart", DevPathFromTextUart }, + { L"UsbClass", DevPathFromTextUsbClass }, + { L"UsbAudio", DevPathFromTextUsbAudio }, + { L"UsbCDCControl", DevPathFromTextUsbCDCControl }, + { L"UsbHID", DevPathFromTextUsbHID }, + { L"UsbImage", DevPathFromTextUsbImage }, + { L"UsbPrinter", DevPathFromTextUsbPrinter }, + { L"UsbMassStorage", DevPathFromTextUsbMassStorage }, + { L"UsbHub", DevPathFromTextUsbHub }, + { L"UsbCDCData", DevPathFromTextUsbCDCData }, + { L"UsbSmartCard", DevPathFromTextUsbSmartCard }, + { L"UsbVideo", DevPathFromTextUsbVideo }, + { L"UsbDiagnostic", DevPathFromTextUsbDiagnostic }, + { L"UsbWireless", DevPathFromTextUsbWireless }, + { L"UsbDeviceFirmwareUpdate", DevPathFromTextUsbDeviceFirmwareUpdate }, + { L"UsbIrdaBridge", DevPathFromTextUsbIrdaBridge }, + { L"UsbTestAndMeasurement", DevPathFromTextUsbTestAndMeasurement }, + { L"UsbWwid", DevPathFromTextUsbWwid }, + { L"Unit", DevPathFromTextUnit }, + { L"iSCSI", DevPathFromTextiSCSI }, + { L"Vlan", DevPathFromTextVlan }, + { L"Dns", DevPathFromTextDns }, + { L"Uri", DevPathFromTextUri }, + { L"Bluetooth", DevPathFromTextBluetooth }, + { L"Wi-Fi", DevPathFromTextWiFi }, + { L"BluetoothLE", DevPathFromTextBluetoothLE }, + { L"MediaPath", DevPathFromTextMediaPath }, + { L"HD", DevPathFromTextHD }, + { L"CDROM", DevPathFromTextCDROM }, + { L"VenMedia", DevPathFromTextVenMedia }, + { L"Media", DevPathFromTextMedia }, + { L"Fv", DevPathFromTextFv }, + { L"FvFile", DevPathFromTextFvFile }, + { L"Offset", DevPathFromTextRelativeOffsetRange }, + { L"RamDisk", DevPathFromTextRamDisk }, + { L"VirtualDisk", DevPathFromTextVirtualDisk }, + { L"VirtualCD", DevPathFromTextVirtualCd }, + { L"PersistentVirtualDisk", DevPathFromTextPersistentVirtualDisk }, + { L"PersistentVirtualCD", DevPathFromTextPersistentVirtualCd }, + + { L"BbsPath", DevPathFromTextBbsPath }, + { L"BBS", DevPathFromTextBBS }, + { L"Sata", DevPathFromTextSata }, + { NULL, NULL } }; /** @@ -3538,14 +3579,14 @@ GLOBAL_REMOVE_IF_UNREFERENCED DEVICE_PATH_FROM_TEXT_TABLE mUefiDevicePathLibDevP EFI_DEVICE_PATH_PROTOCOL * EFIAPI UefiDevicePathLibConvertTextToDeviceNode ( - IN CONST CHAR16 *TextDeviceNode + IN CONST CHAR16 *TextDeviceNode ) { - DEVICE_PATH_FROM_TEXT FromText; - CHAR16 *ParamStr; - EFI_DEVICE_PATH_PROTOCOL *DeviceNode; - CHAR16 *DeviceNodeStr; - UINTN Index; + DEVICE_PATH_FROM_TEXT FromText; + CHAR16 *ParamStr; + EFI_DEVICE_PATH_PROTOCOL *DeviceNode; + CHAR16 *DeviceNodeStr; + UINTN Index; if ((TextDeviceNode == NULL) || (IS_NULL (*TextDeviceNode))) { return NULL; @@ -3568,7 +3609,7 @@ UefiDevicePathLibConvertTextToDeviceNode ( // // A file path // - FromText = DevPathFromTextFilePath; + FromText = DevPathFromTextFilePath; DeviceNode = FromText (DeviceNodeStr); } else { DeviceNode = FromText (ParamStr); @@ -3595,28 +3636,28 @@ UefiDevicePathLibConvertTextToDeviceNode ( EFI_DEVICE_PATH_PROTOCOL * EFIAPI UefiDevicePathLibConvertTextToDevicePath ( - IN CONST CHAR16 *TextDevicePath + IN CONST CHAR16 *TextDevicePath ) { - EFI_DEVICE_PATH_PROTOCOL *DeviceNode; - EFI_DEVICE_PATH_PROTOCOL *NewDevicePath; - CHAR16 *DevicePathStr; - CHAR16 *Str; - CHAR16 *DeviceNodeStr; - BOOLEAN IsInstanceEnd; - EFI_DEVICE_PATH_PROTOCOL *DevicePath; + EFI_DEVICE_PATH_PROTOCOL *DeviceNode; + EFI_DEVICE_PATH_PROTOCOL *NewDevicePath; + CHAR16 *DevicePathStr; + CHAR16 *Str; + CHAR16 *DeviceNodeStr; + BOOLEAN IsInstanceEnd; + EFI_DEVICE_PATH_PROTOCOL *DevicePath; if ((TextDevicePath == NULL) || (IS_NULL (*TextDevicePath))) { return NULL; } - DevicePath = (EFI_DEVICE_PATH_PROTOCOL *) AllocatePool (END_DEVICE_PATH_LENGTH); + DevicePath = (EFI_DEVICE_PATH_PROTOCOL *)AllocatePool (END_DEVICE_PATH_LENGTH); ASSERT (DevicePath != NULL); SetDevicePathEndNode (DevicePath); DevicePathStr = UefiDevicePathLibStrDuplicate (TextDevicePath); - Str = DevicePathStr; + Str = DevicePathStr; while ((DeviceNodeStr = GetNextDeviceNodeStr (&Str, &IsInstanceEnd)) != NULL) { DeviceNode = UefiDevicePathLibConvertTextToDeviceNode (DeviceNodeStr); @@ -3626,7 +3667,7 @@ UefiDevicePathLibConvertTextToDevicePath ( DevicePath = NewDevicePath; if (IsInstanceEnd) { - DeviceNode = (EFI_DEVICE_PATH_PROTOCOL *) AllocatePool (END_DEVICE_PATH_LENGTH); + DeviceNode = (EFI_DEVICE_PATH_PROTOCOL *)AllocatePool (END_DEVICE_PATH_LENGTH); ASSERT (DeviceNode != NULL); SetDevicePathEndNode (DeviceNode); DeviceNode->SubType = END_INSTANCE_DEVICE_PATH_SUBTYPE;