diff options
Diffstat (limited to 'MdePkg')
-rw-r--r-- | MdePkg/Library/DxeIoLibEsal/IoLib.c | 4 | ||||
-rw-r--r-- | MdePkg/Library/DxeSalLibEsal/DxeSalLibEsal.c | 9 |
2 files changed, 12 insertions, 1 deletions
diff --git a/MdePkg/Library/DxeIoLibEsal/IoLib.c b/MdePkg/Library/DxeIoLibEsal/IoLib.c index 7bc6ff1b61..81b28ecdd9 100644 --- a/MdePkg/Library/DxeIoLibEsal/IoLib.c +++ b/MdePkg/Library/DxeIoLibEsal/IoLib.c @@ -38,6 +38,8 @@ IoReadWorker ( SAL_RETURN_REGS ReturnReg;
UINT64 Data;
+ Data = 0;
+
ReturnReg = EsalCall (
EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_LO,
EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_HI,
@@ -119,6 +121,8 @@ MmioReadWorker ( SAL_RETURN_REGS ReturnReg;
UINT64 Data;
+ Data = 0;
+
ReturnReg = EsalCall (
EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_LO,
EFI_EXTENDED_SAL_BASE_IO_SERVICES_PROTOCOL_GUID_HI,
diff --git a/MdePkg/Library/DxeSalLibEsal/DxeSalLibEsal.c b/MdePkg/Library/DxeSalLibEsal/DxeSalLibEsal.c index b013146eb2..8d1dd9ae15 100644 --- a/MdePkg/Library/DxeSalLibEsal/DxeSalLibEsal.c +++ b/MdePkg/Library/DxeSalLibEsal/DxeSalLibEsal.c @@ -59,6 +59,14 @@ SalCall ( )
{
SAL_RETURN_REGS Regs;
+
+ //
+ // Initial all members in this structure.
+ //
+ Regs.r9 = 0;
+ Regs.r10 = 0;
+ Regs.r11 = 0;
+ Regs.Status = EFI_SAL_INVALID_ARGUMENT;
switch (Index) {
case EFI_SAL_SET_VECTORS:
@@ -272,7 +280,6 @@ SalCall ( break;
default:
- Regs.Status = EFI_SAL_INVALID_ARGUMENT;
return Regs;
break;
}
|