mirror of https://github.com/ncroxon/gnu-efi
* Fixed typeo lib/error.c EFI_WARN_UNKNOWN_GLYPH definition.
On couple of locations in runtime string library (rtstr.c) there are calls to non-runtime variant of StrLen function. * Another issue is with formatting 1394 paths. The F1394_DEVICE_PATH::Guid is formatted as %g, but 1394 GUID is 8 byte integer, not EFI_GUID and therefore should be formatted as e.g. %016lx (as edk2 does). * Beyond what's mentioned above, changed the format of the harddrive path, so it's in line with edk2 format and spec (2.7 errata A, chapter 10.6.1.6, table 102). Signed-off-by: Nigel Croxon <ncroxon@redhat.com> Signed-off-by: manison <manison@users.sf.net>
This commit is contained in:
parent
5d0d538c25
commit
d34132e62f
|
@ -325,11 +325,11 @@ typedef struct _VLAN_DEVICE_PATH {
|
|||
#define MSG_INFINIBAND_DP 0x09
|
||||
typedef struct _INFINIBAND_DEVICE_PATH {
|
||||
EFI_DEVICE_PATH_PROTOCOL Header;
|
||||
UINT32 ResourceFlags ;
|
||||
UINT64 PortGid ;
|
||||
UINT64 ServiceId ;
|
||||
UINT64 TargetPortId ;
|
||||
UINT64 DeviceId ;
|
||||
UINT32 ResourceFlags;
|
||||
UINT8 PortGid[16];
|
||||
UINT64 ServiceId;
|
||||
UINT64 TargetPortId;
|
||||
UINT64 DeviceId;
|
||||
} INFINIBAND_DEVICE_PATH;
|
||||
|
||||
#define MSG_UART_DP 0x0e
|
||||
|
|
26
lib/dpath.c
26
lib/dpath.c
|
@ -659,7 +659,8 @@ _DevPath1394 (
|
|||
F1394_DEVICE_PATH *F1394;
|
||||
|
||||
F1394 = DevPath;
|
||||
CatPrint(Str, L"1394(%g)", &F1394->Guid);
|
||||
// Guid has format of IEEE-EUI64
|
||||
CatPrint(Str, L"I1394(%016lx)", F1394->Guid);
|
||||
}
|
||||
|
||||
|
||||
|
@ -863,9 +864,9 @@ _DevPathInfiniBand (
|
|||
INFINIBAND_DEVICE_PATH *InfiniBand;
|
||||
|
||||
InfiniBand = DevPath;
|
||||
CatPrint( Str , L"Infiniband(0x%x,%g,0x%lx,0x%lx,0x%lx)" ,
|
||||
InfiniBand-> ResourceFlags , InfiniBand-> PortGid , InfiniBand-> ServiceId ,
|
||||
InfiniBand-> TargetPortId , InfiniBand-> DeviceId ) ;
|
||||
CatPrint(Str, L"Infiniband(0x%x,%g,0x%lx,0x%lx,0x%lx)",
|
||||
InfiniBand->ResourceFlags, InfiniBand->PortGid, InfiniBand->ServiceId,
|
||||
InfiniBand->TargetPortId, InfiniBand->DeviceId);
|
||||
}
|
||||
|
||||
static VOID
|
||||
|
@ -889,17 +890,19 @@ _DevPathUart (
|
|||
}
|
||||
|
||||
if (Uart->BaudRate == 0) {
|
||||
CatPrint(Str, L"Uart(DEFAULT %c",Uart->BaudRate,Parity);
|
||||
CatPrint(Str, L"Uart(DEFAULT,");
|
||||
} else {
|
||||
CatPrint(Str, L"Uart(%d %c",Uart->BaudRate,Parity);
|
||||
CatPrint(Str, L"Uart(%ld,", Uart->BaudRate);
|
||||
}
|
||||
|
||||
if (Uart->DataBits == 0) {
|
||||
CatPrint(Str, L"D");
|
||||
CatPrint(Str, L"DEFAULT,");
|
||||
} else {
|
||||
CatPrint(Str, L"%d",Uart->DataBits);
|
||||
CatPrint(Str, L"%d,", Uart->DataBits);
|
||||
}
|
||||
|
||||
CatPrint(Str, L"%c,", Parity);
|
||||
|
||||
switch (Uart->StopBits) {
|
||||
case 0 : CatPrint(Str, L"D)"); break;
|
||||
case 1 : CatPrint(Str, L"1)"); break;
|
||||
|
@ -933,21 +936,20 @@ _DevPathHardDrive (
|
|||
Hd = DevPath;
|
||||
switch (Hd->SignatureType) {
|
||||
case SIGNATURE_TYPE_MBR:
|
||||
CatPrint(Str, L"HD(Part%d,Sig%08X)",
|
||||
CatPrint(Str, L"HD(%d,MBR,0x%08x)",
|
||||
Hd->PartitionNumber,
|
||||
*((UINT32 *)(&(Hd->Signature[0])))
|
||||
);
|
||||
break;
|
||||
case SIGNATURE_TYPE_GUID:
|
||||
CatPrint(Str, L"HD(Part%d,Sig%g)",
|
||||
CatPrint(Str, L"HD(%d,GPT,%g)",
|
||||
Hd->PartitionNumber,
|
||||
(EFI_GUID *) &(Hd->Signature[0])
|
||||
);
|
||||
break;
|
||||
default:
|
||||
CatPrint(Str, L"HD(Part%d,MBRType=%02x,SigType=%02x)",
|
||||
CatPrint(Str, L"HD(%d,%d,0)",
|
||||
Hd->PartitionNumber,
|
||||
Hd->MBRType,
|
||||
Hd->SignatureType
|
||||
);
|
||||
break;
|
||||
|
|
|
@ -56,7 +56,7 @@ struct {
|
|||
{ EFI_COMPROMISED_DATA, L"Compromised Data"},
|
||||
|
||||
// warnings
|
||||
{ EFI_WARN_UNKOWN_GLYPH, L"Warning Unknown Glyph"},
|
||||
{ EFI_WARN_UNKNOWN_GLYPH, L"Warning Unknown Glyph"},
|
||||
{ EFI_WARN_DELETE_FAILURE, L"Warning Delete Failure"},
|
||||
{ EFI_WARN_WRITE_FAILURE, L"Warning Write Failure"},
|
||||
{ EFI_WARN_BUFFER_TOO_SMALL, L"Warning Buffer Too Small"},
|
||||
|
|
|
@ -18,7 +18,7 @@ Revision History
|
|||
#include "lib.h"
|
||||
|
||||
#ifndef __GNUC__
|
||||
#pragma RUNTIME_CODE(RtAcquireLock)
|
||||
#pragma RUNTIME_CODE(RtStrCmp)
|
||||
#endif
|
||||
INTN
|
||||
RUNTIMEFUNCTION
|
||||
|
@ -76,7 +76,7 @@ RtStrnCpy (
|
|||
}
|
||||
|
||||
#ifndef __GNUC__
|
||||
#pragma RUNTIME_CODE(RtStrCpy)
|
||||
#pragma RUNTIME_CODE(RtStpCpy)
|
||||
#endif
|
||||
CHAR16 *
|
||||
RUNTIMEFUNCTION
|
||||
|
@ -122,7 +122,7 @@ RtStrCat (
|
|||
IN CONST CHAR16 *Src
|
||||
)
|
||||
{
|
||||
RtStrCpy(Dest+StrLen(Dest), Src);
|
||||
RtStrCpy(Dest+RtStrLen(Dest), Src);
|
||||
}
|
||||
|
||||
#ifndef __GNUC__
|
||||
|
@ -138,7 +138,7 @@ RtStrnCat (
|
|||
{
|
||||
UINTN DestSize, Size;
|
||||
|
||||
DestSize = StrLen(Dest);
|
||||
DestSize = RtStrLen(Dest);
|
||||
Size = RtStrnLen(Src, Len);
|
||||
RtCopyMem(Dest + DestSize, Src, Size * sizeof(CHAR16));
|
||||
Dest[DestSize + Size] = '\0';
|
||||
|
@ -169,11 +169,11 @@ RtStrnLen (
|
|||
IN CONST CHAR16 *s1,
|
||||
IN UINTN Len
|
||||
)
|
||||
// copy strings
|
||||
// string length
|
||||
{
|
||||
UINTN i;
|
||||
for (i = 0; *s1 && i < Len; i++)
|
||||
s1++;
|
||||
s1++;
|
||||
return i;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue