From 2b16a4fb91b9b31c0d152588f5ac51080c6c0763 Mon Sep 17 00:00:00 2001 From: Michael Kubacki Date: Sun, 5 Dec 2021 14:53:52 -0800 Subject: [PATCH] ArmVirtPkg: Apply uncrustify changes REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737 Apply uncrustify changes to .c/.h files in the ArmVirtPkg package Cc: Andrew Fish Cc: Leif Lindholm Cc: Michael D Kinney Signed-off-by: Michael Kubacki Reviewed-by: Sami Mujawar --- .../CloudHvAcpiPlatformDxe/CloudHvAcpi.c | 73 +-- .../CloudHvHasAcpiDtDxe.c | 11 +- .../Include/Guid/Early16550UartBaseAddress.h | 4 +- .../Include/Guid/EarlyPL011BaseAddress.h | 4 +- .../Include/Library/ArmVirtMemInfoLib.h | 2 +- .../KvmtoolPlatformDxe/KvmtoolPlatformDxe.c | 8 +- ArmVirtPkg/Library/ArmVirtDxeHobLib/HobLib.c | 98 ++-- .../ArmVirtGicArchLib/ArmVirtGicArchLib.c | 212 ++++---- .../ArmVirtMemoryInitPeiLib.c | 52 +- .../ArmVirtPL031FdtClientLib.c | 56 +- .../ArmVirtPciHostBridgeUtilityLib.c | 110 ++-- .../ArmVirtPsciResetSystemLib.c | 115 +++-- .../ArmVirtPsciResetSystemPeiLib.c | 102 ++-- .../ArmVirtTimerFdtClientLib.c | 60 ++- .../BaseCachingPciExpressLib/PciExpressLib.c | 319 ++++++------ .../EarlyFdt16550SerialPortHookLib.c | 7 +- .../Fdt16550SerialPortHookLib.c | 4 +- .../EarlyFdtPL011SerialPortLib.c | 48 +- .../FdtPL011SerialPortLib.c | 49 +- .../KvmtoolPlatformPeiLib.c | 6 +- .../KvmtoolRtcFdtClientLib.c | 33 +- .../KvmtoolVirtMemInfoLib.c | 46 +- .../NorFlashKvmtoolLib/NorFlashKvmtool.c | 94 ++-- .../Library/NorFlashQemuLib/NorFlashQemuLib.c | 85 +-- .../PlatformBootManagerLib/PlatformBm.c | 484 +++++++++++------- .../PlatformBootManagerLib/QemuKernel.c | 20 +- .../Library/PlatformPeiLib/PlatformPeiLib.c | 73 +-- .../QemuVirtMemInfoLib/QemuVirtMemInfoLib.c | 33 +- .../QemuVirtMemInfoPeiLibConstructor.c | 44 +- .../XenArmGenericTimerVirtCounterLib.c | 19 +- .../XenVirtMemInfoLib/XenVirtMemInfoLib.c | 4 +- .../PlatformHasAcpiDtDxe.c | 15 +- ArmVirtPkg/PrePi/FdtParser.c | 19 +- ArmVirtPkg/PrePi/PrePi.c | 66 ++- ArmVirtPkg/PrePi/PrePi.h | 10 +- .../XenAcpiPlatformDxe/XenAcpiPlatformDxe.c | 152 +++--- .../XenPlatformHasAcpiDtDxe.c | 6 +- ArmVirtPkg/XenioFdtDxe/XenioFdtDxe.c | 56 +- 38 files changed, 1446 insertions(+), 1153 deletions(-) diff --git a/ArmVirtPkg/CloudHvAcpiPlatformDxe/CloudHvAcpi.c b/ArmVirtPkg/CloudHvAcpiPlatformDxe/CloudHvAcpi.c index 0e86e7a036..0595b0e1d3 100644 --- a/ArmVirtPkg/CloudHvAcpiPlatformDxe/CloudHvAcpi.c +++ b/ArmVirtPkg/CloudHvAcpiPlatformDxe/CloudHvAcpi.c @@ -26,13 +26,13 @@ FindAcpiTableProtocol ( VOID ) { - EFI_STATUS Status; - EFI_ACPI_TABLE_PROTOCOL *AcpiTable; + EFI_STATUS Status; + EFI_ACPI_TABLE_PROTOCOL *AcpiTable; Status = gBS->LocateProtocol ( &gEfiAcpiTableProtocolGuid, NULL, - (VOID**)&AcpiTable + (VOID **)&AcpiTable ); ASSERT_EFI_ERROR (Status); return AcpiTable; @@ -52,32 +52,32 @@ FindAcpiTableProtocol ( EFI_STATUS EFIAPI InstallCloudHvAcpiTables ( - IN EFI_ACPI_TABLE_PROTOCOL *AcpiProtocol + IN EFI_ACPI_TABLE_PROTOCOL *AcpiProtocol ) { - UINTN InstalledKey; - UINTN TableSize; - UINTN AcpiTableLength; - UINT64 RsdpPtr; - UINT64 XsdtPtr; - UINT64 TableOffset; - UINT64 AcpiTablePtr; - UINT64 *DsdtPtr; - EFI_STATUS Status; + UINTN InstalledKey; + UINTN TableSize; + UINTN AcpiTableLength; + UINT64 RsdpPtr; + UINT64 XsdtPtr; + UINT64 TableOffset; + UINT64 AcpiTablePtr; + UINT64 *DsdtPtr; + EFI_STATUS Status; if (AcpiProtocol == NULL) { return EFI_INVALID_PARAMETER; } - RsdpPtr = PcdGet64 (PcdCloudHvAcpiRsdpBaseAddress); - XsdtPtr = ((EFI_ACPI_6_3_ROOT_SYSTEM_DESCRIPTION_POINTER *)RsdpPtr)->XsdtAddress; + RsdpPtr = PcdGet64 (PcdCloudHvAcpiRsdpBaseAddress); + XsdtPtr = ((EFI_ACPI_6_3_ROOT_SYSTEM_DESCRIPTION_POINTER *)RsdpPtr)->XsdtAddress; AcpiTableLength = ((EFI_ACPI_COMMON_HEADER *)XsdtPtr)->Length; - TableOffset = sizeof (EFI_ACPI_DESCRIPTION_HEADER); - DsdtPtr = NULL; + TableOffset = sizeof (EFI_ACPI_DESCRIPTION_HEADER); + DsdtPtr = NULL; while (TableOffset < AcpiTableLength) { AcpiTablePtr = *(UINT64 *)(XsdtPtr + TableOffset); - TableSize = ((EFI_ACPI_COMMON_HEADER *)AcpiTablePtr)->Length; + TableSize = ((EFI_ACPI_COMMON_HEADER *)AcpiTablePtr)->Length; // // Install ACPI tables from XSDT @@ -89,7 +89,7 @@ InstallCloudHvAcpiTables ( &InstalledKey ); if (EFI_ERROR (Status)) { - return Status; + return Status; } // @@ -97,7 +97,8 @@ InstallCloudHvAcpiTables ( // if ((DsdtPtr == NULL) && (EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE == - ((EFI_ACPI_COMMON_HEADER *)AcpiTablePtr)->Signature)) { + ((EFI_ACPI_COMMON_HEADER *)AcpiTablePtr)->Signature)) + { DsdtPtr = (UINT64 *)((EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE *)AcpiTablePtr)->XDsdt; } @@ -113,12 +114,12 @@ InstallCloudHvAcpiTables ( // Install DSDT table // TableSize = ((EFI_ACPI_COMMON_HEADER *)DsdtPtr)->Length; - Status = AcpiProtocol->InstallAcpiTable ( - AcpiProtocol, - DsdtPtr, - TableSize, - &InstalledKey - ); + Status = AcpiProtocol->InstallAcpiTable ( + AcpiProtocol, + DsdtPtr, + TableSize, + &InstalledKey + ); return Status; } @@ -138,22 +139,22 @@ InstallCloudHvAcpiTables ( EFI_STATUS EFIAPI CloudHvAcpiPlatformEntryPoint ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; + EFI_STATUS Status; Status = InstallCloudHvAcpiTables (FindAcpiTableProtocol ()); if (EFI_ERROR (Status)) { - DEBUG (( - DEBUG_ERROR, - "%a: Fail to install Acpi table: %r\n", - __FUNCTION__, - Status - )); - CpuDeadLoop (); + DEBUG (( + DEBUG_ERROR, + "%a: Fail to install Acpi table: %r\n", + __FUNCTION__, + Status + )); + CpuDeadLoop (); } return EFI_SUCCESS; diff --git a/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c b/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c index 4cf1d39df4..05fc35cb82 100644 --- a/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c +++ b/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c @@ -28,19 +28,20 @@ EFI_STATUS EFIAPI PlatformHasAcpiDt ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; + EFI_STATUS Status; // // If we fail to install any of the necessary protocols below, the OS will be // unbootable anyway (due to lacking hardware description), so tolerate no // errors here. // - if (MAX_UINTN == MAX_UINT64 && - !PcdGetBool (PcdForceNoAcpi)) { + if ((MAX_UINTN == MAX_UINT64) && + !PcdGetBool (PcdForceNoAcpi)) + { Status = gBS->InstallProtocolInterface ( &ImageHandle, &gEdkiiPlatformHasAcpiGuid, diff --git a/ArmVirtPkg/Include/Guid/Early16550UartBaseAddress.h b/ArmVirtPkg/Include/Guid/Early16550UartBaseAddress.h index 6b76f37a27..22f5bfbd44 100644 --- a/ArmVirtPkg/Include/Guid/Early16550UartBaseAddress.h +++ b/ArmVirtPkg/Include/Guid/Early16550UartBaseAddress.h @@ -11,12 +11,12 @@ #ifndef EARLY_16550_UART_BASE_ADDRESS_H__ #define EARLY_16550_UART_BASE_ADDRESS_H__ -#define EARLY_16550_UART_BASE_ADDRESS_GUID { \ +#define EARLY_16550_UART_BASE_ADDRESS_GUID { \ 0xea67ca3e, 0x1f54, 0x436b, { \ 0x97, 0x88, 0xd4, 0xeb, 0x29, 0xc3, 0x42, 0x67 \ } \ } -extern EFI_GUID gEarly16550UartBaseAddressGuid; +extern EFI_GUID gEarly16550UartBaseAddressGuid; #endif // EARLY_16550_UART_BASE_ADDRESS_H__ diff --git a/ArmVirtPkg/Include/Guid/EarlyPL011BaseAddress.h b/ArmVirtPkg/Include/Guid/EarlyPL011BaseAddress.h index 8818a87aec..492cbbcb15 100644 --- a/ArmVirtPkg/Include/Guid/EarlyPL011BaseAddress.h +++ b/ArmVirtPkg/Include/Guid/EarlyPL011BaseAddress.h @@ -11,11 +11,11 @@ #ifndef __EARLY_PL011_BASE_ADDRESS_H__ #define __EARLY_PL011_BASE_ADDRESS_H__ -#define EARLY_PL011_BASE_ADDRESS_GUID { \ +#define EARLY_PL011_BASE_ADDRESS_GUID {\ 0xB199DEA9, 0xFD5C, 0x4A84, \ { 0x80, 0x82, 0x2F, 0x41, 0x70, 0x78, 0x03, 0x05 } \ } -extern EFI_GUID gEarlyPL011BaseAddressGuid; +extern EFI_GUID gEarlyPL011BaseAddressGuid; #endif diff --git a/ArmVirtPkg/Include/Library/ArmVirtMemInfoLib.h b/ArmVirtPkg/Include/Library/ArmVirtMemInfoLib.h index 3daf1fa5f9..7812c2e286 100644 --- a/ArmVirtPkg/Include/Library/ArmVirtMemInfoLib.h +++ b/ArmVirtPkg/Include/Library/ArmVirtMemInfoLib.h @@ -29,7 +29,7 @@ VOID EFIAPI ArmVirtGetMemoryMap ( - OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap + OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap ); #endif diff --git a/ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c b/ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c index a42b64d106..3f5027fac4 100644 --- a/ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c +++ b/ArmVirtPkg/KvmtoolPlatformDxe/KvmtoolPlatformDxe.c @@ -33,7 +33,7 @@ STATIC EFI_STATUS PlatformHasAcpiDt ( - IN EFI_HANDLE ImageHandle + IN EFI_HANDLE ImageHandle ) { if (!PcdGetBool (PcdForceNoAcpi)) { @@ -69,11 +69,11 @@ PlatformHasAcpiDt ( EFI_STATUS EFIAPI KvmtoolPlatformDxeEntryPoint ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; + EFI_STATUS Status; Status = PlatformHasAcpiDt (ImageHandle); ASSERT_EFI_ERROR (Status); diff --git a/ArmVirtPkg/Library/ArmVirtDxeHobLib/HobLib.c b/ArmVirtPkg/Library/ArmVirtDxeHobLib/HobLib.c index 2da5d22193..55f8bdfdb6 100644 --- a/ArmVirtPkg/Library/ArmVirtDxeHobLib/HobLib.c +++ b/ArmVirtPkg/Library/ArmVirtDxeHobLib/HobLib.c @@ -43,7 +43,7 @@ HobLibConstructor ( IN EFI_SYSTEM_TABLE *SystemTable ) { - UINTN Index; + UINTN Index; for (Index = 0; Index < SystemTable->NumberOfTableEntries; Index++) { if (CompareGuid (&gEfiHobListGuid, &(SystemTable->ConfigurationTable[Index].VendorGuid))) { @@ -101,15 +101,15 @@ GetHobList ( VOID * EFIAPI GetNextHob ( - IN UINT16 Type, - IN CONST VOID *HobStart + IN UINT16 Type, + IN CONST VOID *HobStart ) { EFI_PEI_HOB_POINTERS Hob; ASSERT (HobStart != NULL); - Hob.Raw = (UINT8 *) HobStart; + Hob.Raw = (UINT8 *)HobStart; // // Parse the HOB list until end of list or matching type is found. // @@ -117,8 +117,10 @@ GetNextHob ( if (Hob.Header->HobType == Type) { return Hob.Raw; } + Hob.Raw = GET_NEXT_HOB (Hob); } + return NULL; } @@ -138,10 +140,10 @@ GetNextHob ( VOID * EFIAPI GetFirstHob ( - IN UINT16 Type + IN UINT16 Type ) { - VOID *HobList; + VOID *HobList; HobList = GetHobList (); return GetNextHob (Type, HobList); @@ -172,19 +174,21 @@ GetFirstHob ( VOID * EFIAPI GetNextGuidHob ( - IN CONST EFI_GUID *Guid, - IN CONST VOID *HobStart + IN CONST EFI_GUID *Guid, + IN CONST VOID *HobStart ) { EFI_PEI_HOB_POINTERS GuidHob; - GuidHob.Raw = (UINT8 *) HobStart; + GuidHob.Raw = (UINT8 *)HobStart; while ((GuidHob.Raw = GetNextHob (EFI_HOB_TYPE_GUID_EXTENSION, GuidHob.Raw)) != NULL) { if (CompareGuid (Guid, &GuidHob.Guid->Name)) { break; } + GuidHob.Raw = GET_NEXT_HOB (GuidHob); } + return GuidHob.Raw; } @@ -209,10 +213,10 @@ GetNextGuidHob ( VOID * EFIAPI GetFirstGuidHob ( - IN CONST EFI_GUID *Guid + IN CONST EFI_GUID *Guid ) { - VOID *HobList; + VOID *HobList; HobList = GetHobList (); return GetNextGuidHob (Guid, HobList); @@ -237,11 +241,11 @@ GetBootModeHob ( VOID ) { - EFI_HOB_HANDOFF_INFO_TABLE *HandOffHob; + EFI_HOB_HANDOFF_INFO_TABLE *HandOffHob; - HandOffHob = (EFI_HOB_HANDOFF_INFO_TABLE *) GetHobList (); + HandOffHob = (EFI_HOB_HANDOFF_INFO_TABLE *)GetHobList (); - return HandOffHob->BootMode; + return HandOffHob->BootMode; } /** @@ -263,10 +267,10 @@ GetBootModeHob ( VOID EFIAPI BuildModuleHob ( - IN CONST EFI_GUID *ModuleName, - IN EFI_PHYSICAL_ADDRESS MemoryAllocationModule, - IN UINT64 ModuleLength, - IN EFI_PHYSICAL_ADDRESS EntryPoint + IN CONST EFI_GUID *ModuleName, + IN EFI_PHYSICAL_ADDRESS MemoryAllocationModule, + IN UINT64 ModuleLength, + IN EFI_PHYSICAL_ADDRESS EntryPoint ) { // @@ -330,8 +334,8 @@ BuildResourceDescriptorHob ( VOID * EFIAPI BuildGuidHob ( - IN CONST EFI_GUID *Guid, - IN UINTN DataLength + IN CONST EFI_GUID *Guid, + IN UINTN DataLength ) { // @@ -369,9 +373,9 @@ BuildGuidHob ( VOID * EFIAPI BuildGuidDataHob ( - IN CONST EFI_GUID *Guid, - IN VOID *Data, - IN UINTN DataLength + IN CONST EFI_GUID *Guid, + IN VOID *Data, + IN UINTN DataLength ) { // @@ -398,8 +402,8 @@ BuildGuidDataHob ( VOID EFIAPI BuildFvHob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length ) { // @@ -427,10 +431,10 @@ BuildFvHob ( VOID EFIAPI BuildFv2Hob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length, - IN CONST EFI_GUID *FvName, - IN CONST EFI_GUID *FileName + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length, + IN CONST EFI_GUID *FvName, + IN CONST EFI_GUID *FileName ) { ASSERT (FALSE); @@ -460,12 +464,12 @@ BuildFv2Hob ( VOID EFIAPI BuildFv3Hob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length, - IN UINT32 AuthenticationStatus, - IN BOOLEAN ExtractedFv, - IN CONST EFI_GUID *FvName OPTIONAL, - IN CONST EFI_GUID *FileName OPTIONAL + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length, + IN UINT32 AuthenticationStatus, + IN BOOLEAN ExtractedFv, + IN CONST EFI_GUID *FvName OPTIONAL, + IN CONST EFI_GUID *FileName OPTIONAL ) { ASSERT (FALSE); @@ -488,8 +492,8 @@ BuildFv3Hob ( VOID EFIAPI BuildCvHob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length ) { // @@ -514,8 +518,8 @@ BuildCvHob ( VOID EFIAPI BuildCpuHob ( - IN UINT8 SizeOfMemorySpace, - IN UINT8 SizeOfIoSpace + IN UINT8 SizeOfMemorySpace, + IN UINT8 SizeOfIoSpace ) { // @@ -540,8 +544,8 @@ BuildCpuHob ( VOID EFIAPI BuildStackHob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length ) { // @@ -567,9 +571,9 @@ BuildStackHob ( VOID EFIAPI BuildBspStoreHob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length, - IN EFI_MEMORY_TYPE MemoryType + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length, + IN EFI_MEMORY_TYPE MemoryType ) { // @@ -595,9 +599,9 @@ BuildBspStoreHob ( VOID EFIAPI BuildMemoryAllocationHob ( - IN EFI_PHYSICAL_ADDRESS BaseAddress, - IN UINT64 Length, - IN EFI_MEMORY_TYPE MemoryType + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length, + IN EFI_MEMORY_TYPE MemoryType ) { // diff --git a/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c b/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c index 46e5b3f3e1..57bbfd20d0 100644 --- a/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c +++ b/ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c @@ -19,7 +19,7 @@ #include -STATIC ARM_GIC_ARCH_REVISION mGicArchRevision; +STATIC ARM_GIC_ARCH_REVISION mGicArchRevision; RETURN_STATUS EFIAPI @@ -27,115 +27,133 @@ ArmVirtGicArchLibConstructor ( VOID ) { - UINT32 IccSre; - FDT_CLIENT_PROTOCOL *FdtClient; - CONST UINT64 *Reg; - UINT32 RegSize; - UINTN AddressCells, SizeCells; - UINTN GicRevision; - EFI_STATUS Status; - UINT64 DistBase, CpuBase, RedistBase; - RETURN_STATUS PcdStatus; - - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + UINT32 IccSre; + FDT_CLIENT_PROTOCOL *FdtClient; + CONST UINT64 *Reg; + UINT32 RegSize; + UINTN AddressCells, SizeCells; + UINTN GicRevision; + EFI_STATUS Status; + UINT64 DistBase, CpuBase, RedistBase; + RETURN_STATUS PcdStatus; + + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); GicRevision = 2; - Status = FdtClient->FindCompatibleNodeReg (FdtClient, "arm,cortex-a15-gic", - (CONST VOID **)&Reg, &AddressCells, &SizeCells, - &RegSize); + Status = FdtClient->FindCompatibleNodeReg ( + FdtClient, + "arm,cortex-a15-gic", + (CONST VOID **)&Reg, + &AddressCells, + &SizeCells, + &RegSize + ); if (Status == EFI_NOT_FOUND) { GicRevision = 3; - Status = FdtClient->FindCompatibleNodeReg (FdtClient, "arm,gic-v3", - (CONST VOID **)&Reg, &AddressCells, &SizeCells, - &RegSize); + Status = FdtClient->FindCompatibleNodeReg ( + FdtClient, + "arm,gic-v3", + (CONST VOID **)&Reg, + &AddressCells, + &SizeCells, + &RegSize + ); } + if (EFI_ERROR (Status)) { return Status; } switch (GicRevision) { - - case 3: - // - // The GIC v3 DT binding describes a series of at least 3 physical (base - // addresses, size) pairs: the distributor interface (GICD), at least one - // redistributor region (GICR) containing dedicated redistributor - // interfaces for all individual CPUs, and the CPU interface (GICC). - // Under virtualization, we assume that the first redistributor region - // listed covers the boot CPU. Also, our GICv3 driver only supports the - // system register CPU interface, so we can safely ignore the MMIO version - // which is listed after the sequence of redistributor interfaces. - // This means we are only interested in the first two memory regions - // supplied, and ignore everything else. - // - ASSERT (RegSize >= 32); - - // RegProp[0..1] == { GICD base, GICD size } - DistBase = SwapBytes64 (Reg[0]); - ASSERT (DistBase < MAX_UINTN); - - // RegProp[2..3] == { GICR base, GICR size } - RedistBase = SwapBytes64 (Reg[2]); - ASSERT (RedistBase < MAX_UINTN); - - PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase); - ASSERT_RETURN_ERROR (PcdStatus); - PcdStatus = PcdSet64S (PcdGicRedistributorsBase, RedistBase); - ASSERT_RETURN_ERROR (PcdStatus); - - DEBUG ((DEBUG_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n", - DistBase, RedistBase)); - - // - // The default implementation of ArmGicArchLib is responsible for enabling - // the system register interface on the GICv3 if one is found. So let's do - // the same here. - // - IccSre = ArmGicV3GetControlSystemRegisterEnable (); - if (!(IccSre & ICC_SRE_EL2_SRE)) { - ArmGicV3SetControlSystemRegisterEnable (IccSre | ICC_SRE_EL2_SRE); + case 3: + // + // The GIC v3 DT binding describes a series of at least 3 physical (base + // addresses, size) pairs: the distributor interface (GICD), at least one + // redistributor region (GICR) containing dedicated redistributor + // interfaces for all individual CPUs, and the CPU interface (GICC). + // Under virtualization, we assume that the first redistributor region + // listed covers the boot CPU. Also, our GICv3 driver only supports the + // system register CPU interface, so we can safely ignore the MMIO version + // which is listed after the sequence of redistributor interfaces. + // This means we are only interested in the first two memory regions + // supplied, and ignore everything else. + // + ASSERT (RegSize >= 32); + + // RegProp[0..1] == { GICD base, GICD size } + DistBase = SwapBytes64 (Reg[0]); + ASSERT (DistBase < MAX_UINTN); + + // RegProp[2..3] == { GICR base, GICR size } + RedistBase = SwapBytes64 (Reg[2]); + ASSERT (RedistBase < MAX_UINTN); + + PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase); + ASSERT_RETURN_ERROR (PcdStatus); + PcdStatus = PcdSet64S (PcdGicRedistributorsBase, RedistBase); + ASSERT_RETURN_ERROR (PcdStatus); + + DEBUG (( + DEBUG_INFO, + "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n", + DistBase, + RedistBase + )); + + // + // The default implementation of ArmGicArchLib is responsible for enabling + // the system register interface on the GICv3 if one is found. So let's do + // the same here. + // IccSre = ArmGicV3GetControlSystemRegisterEnable (); - } - - // - // Unlike the default implementation, there is no fall through to GICv2 - // mode if this GICv3 cannot be driven in native mode due to the fact - // that the System Register interface is unavailable. - // - ASSERT (IccSre & ICC_SRE_EL2_SRE); - - mGicArchRevision = ARM_GIC_ARCH_REVISION_3; - break; - - case 2: - // - // When the GICv2 is emulated with virtualization=on, it adds a virtual - // set of control registers. This means the register property can be - // either 32 or 64 bytes in size. - // - ASSERT ((RegSize == 32) || (RegSize == 64)); - - DistBase = SwapBytes64 (Reg[0]); - CpuBase = SwapBytes64 (Reg[2]); - ASSERT (DistBase < MAX_UINTN); - ASSERT (CpuBase < MAX_UINTN); - - PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase); - ASSERT_RETURN_ERROR (PcdStatus); - PcdStatus = PcdSet64S (PcdGicInterruptInterfaceBase, CpuBase); - ASSERT_RETURN_ERROR (PcdStatus); - - DEBUG ((DEBUG_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase)); - - mGicArchRevision = ARM_GIC_ARCH_REVISION_2; - break; - - default: - DEBUG ((DEBUG_ERROR, "%a: No GIC revision specified!\n", __FUNCTION__)); - return RETURN_NOT_FOUND; + if (!(IccSre & ICC_SRE_EL2_SRE)) { + ArmGicV3SetControlSystemRegisterEnable (IccSre | ICC_SRE_EL2_SRE); + IccSre = ArmGicV3GetControlSystemRegisterEnable (); + } + + // + // Unlike the default implementation, there is no fall through to GICv2 + // mode if this GICv3 cannot be driven in native mode due to the fact + // that the System Register interface is unavailable. + // + ASSERT (IccSre & ICC_SRE_EL2_SRE); + + mGicArchRevision = ARM_GIC_ARCH_REVISION_3; + break; + + case 2: + // + // When the GICv2 is emulated with virtualization=on, it adds a virtual + // set of control registers. This means the register property can be + // either 32 or 64 bytes in size. + // + ASSERT ((RegSize == 32) || (RegSize == 64)); + + DistBase = SwapBytes64 (Reg[0]); + CpuBase = SwapBytes64 (Reg[2]); + ASSERT (DistBase < MAX_UINTN); + ASSERT (CpuBase < MAX_UINTN); + + PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase); + ASSERT_RETURN_ERROR (PcdStatus); + PcdStatus = PcdSet64S (PcdGicInterruptInterfaceBase, CpuBase); + ASSERT_RETURN_ERROR (PcdStatus); + + DEBUG ((DEBUG_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase)); + + mGicArchRevision = ARM_GIC_ARCH_REVISION_2; + break; + + default: + DEBUG ((DEBUG_ERROR, "%a: No GIC revision specified!\n", __FUNCTION__)); + return RETURN_NOT_FOUND; } + return RETURN_SUCCESS; } diff --git a/ArmVirtPkg/Library/ArmVirtMemoryInitPeiLib/ArmVirtMemoryInitPeiLib.c b/ArmVirtPkg/Library/ArmVirtMemoryInitPeiLib/ArmVirtMemoryInitPeiLib.c index 4946fad77a..022e13e762 100644 --- a/ArmVirtPkg/Library/ArmVirtMemoryInitPeiLib/ArmVirtMemoryInitPeiLib.c +++ b/ArmVirtPkg/Library/ArmVirtMemoryInitPeiLib/ArmVirtMemoryInitPeiLib.c @@ -35,7 +35,7 @@ InitMmu ( // Get Virtual Memory Map from the Platform Library ArmVirtGetMemoryMap (&MemoryTable); - //Note: Because we called PeiServicesInstallPeiMemory() before to call InitMmu() the MMU Page Table resides in + // Note: Because we called PeiServicesInstallPeiMemory() before to call InitMmu() the MMU Page Table resides in // DRAM (even at the top of DRAM as it is the first permanent memory allocation) Status = ArmConfigureMmu (MemoryTable, &TranslationTableBase, &TranslationTableSize); if (EFI_ERROR (Status)) { @@ -46,12 +46,12 @@ InitMmu ( EFI_STATUS EFIAPI MemoryPeim ( - IN EFI_PHYSICAL_ADDRESS UefiMemoryBase, - IN UINT64 UefiMemorySize + IN EFI_PHYSICAL_ADDRESS UefiMemoryBase, + IN UINT64 UefiMemorySize ) { - EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttributes; - UINT64 SystemMemoryTop; + EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttributes; + UINT64 SystemMemoryTop; // Ensure PcdSystemMemorySize has been set ASSERT (PcdGet64 (PcdSystemMemorySize) != 0); @@ -60,35 +60,35 @@ MemoryPeim ( // Now, the permanent memory has been installed, we can call AllocatePages() // ResourceAttributes = ( - EFI_RESOURCE_ATTRIBUTE_PRESENT | - EFI_RESOURCE_ATTRIBUTE_INITIALIZED | - EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE | - EFI_RESOURCE_ATTRIBUTE_TESTED - ); + EFI_RESOURCE_ATTRIBUTE_PRESENT | + EFI_RESOURCE_ATTRIBUTE_INITIALIZED | + EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE | + EFI_RESOURCE_ATTRIBUTE_TESTED + ); SystemMemoryTop = PcdGet64 (PcdSystemMemoryBase) + PcdGet64 (PcdSystemMemorySize); if (SystemMemoryTop - 1 > MAX_ALLOC_ADDRESS) { BuildResourceDescriptorHob ( - EFI_RESOURCE_SYSTEM_MEMORY, - ResourceAttributes, - PcdGet64 (PcdSystemMemoryBase), - (UINT64)MAX_ALLOC_ADDRESS - PcdGet64 (PcdSystemMemoryBase) + 1 - ); + EFI_RESOURCE_SYSTEM_MEMORY, + ResourceAttributes, + PcdGet64 (PcdSystemMemoryBase), + (UINT64)MAX_ALLOC_ADDRESS - PcdGet64 (PcdSystemMemoryBase) + 1 + ); BuildResourceDescriptorHob ( - EFI_RESOURCE_SYSTEM_MEMORY, - ResourceAttributes, - (UINT64)MAX_ALLOC_ADDRESS + 1, - SystemMemoryTop - MAX_ALLOC_ADDRESS - 1 - ); + EFI_RESOURCE_SYSTEM_MEMORY, + ResourceAttributes, + (UINT64)MAX_ALLOC_ADDRESS + 1, + SystemMemoryTop - MAX_ALLOC_ADDRESS - 1 + ); } else { BuildResourceDescriptorHob ( - EFI_RESOURCE_SYSTEM_MEMORY, - ResourceAttributes, - PcdGet64 (PcdSystemMemoryBase), - PcdGet64 (PcdSystemMemorySize) - ); + EFI_RESOURCE_SYSTEM_MEMORY, + ResourceAttributes, + PcdGet64 (PcdSystemMemoryBase), + PcdGet64 (PcdSystemMemorySize) + ); } // @@ -98,7 +98,7 @@ MemoryPeim ( // that the contents we put there with the caches and MMU off will still // be visible after turning them on. // - InvalidateDataCacheRange ((VOID*)(UINTN)UefiMemoryBase, UefiMemorySize); + InvalidateDataCacheRange ((VOID *)(UINTN)UefiMemoryBase, UefiMemorySize); // Build Memory Allocation Hob InitMmu (); diff --git a/ArmVirtPkg/Library/ArmVirtPL031FdtClientLib/ArmVirtPL031FdtClientLib.c b/ArmVirtPkg/Library/ArmVirtPL031FdtClientLib/ArmVirtPL031FdtClientLib.c index 63dc1476a5..45dd9f179c 100644 --- a/ArmVirtPkg/Library/ArmVirtPL031FdtClientLib/ArmVirtPL031FdtClientLib.c +++ b/ArmVirtPkg/Library/ArmVirtPL031FdtClientLib/ArmVirtPL031FdtClientLib.c @@ -22,31 +22,44 @@ ArmVirtPL031FdtClientLibConstructor ( VOID ) { - EFI_STATUS Status; - FDT_CLIENT_PROTOCOL *FdtClient; - INT32 Node; - CONST UINT64 *Reg; - UINT32 RegSize; - UINT64 RegBase; - RETURN_STATUS PcdStatus; - - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + EFI_STATUS Status; + FDT_CLIENT_PROTOCOL *FdtClient; + INT32 Node; + CONST UINT64 *Reg; + UINT32 RegSize; + UINT64 RegBase; + RETURN_STATUS PcdStatus; + + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); Status = FdtClient->FindCompatibleNode (FdtClient, "arm,pl031", &Node); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_WARN, "%a: No 'arm,pl031' compatible DT node found\n", - __FUNCTION__)); + DEBUG (( + DEBUG_WARN, + "%a: No 'arm,pl031' compatible DT node found\n", + __FUNCTION__ + )); return EFI_SUCCESS; } - Status = FdtClient->GetNodeProperty (FdtClient, Node, "reg", - (CONST VOID **)&Reg, &RegSize); + Status = FdtClient->GetNodeProperty ( + FdtClient, + Node, + "reg", + (CONST VOID **)&Reg, + &RegSize + ); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_WARN, + DEBUG (( + DEBUG_WARN, "%a: No 'reg' property found in 'arm,pl031' compatible DT node\n", - __FUNCTION__)); + __FUNCTION__ + )); return EFI_SUCCESS; } @@ -66,10 +79,15 @@ ArmVirtPL031FdtClientLibConstructor ( // need to disable it in the device tree to prevent the OS from attaching // its device driver as well. // - Status = FdtClient->SetNodeProperty (FdtClient, Node, "status", - "disabled", sizeof ("disabled")); + Status = FdtClient->SetNodeProperty ( + FdtClient, + Node, + "status", + "disabled", + sizeof ("disabled") + ); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_WARN, "Failed to set PL031 status to 'disabled'\n")); + DEBUG ((DEBUG_WARN, "Failed to set PL031 status to 'disabled'\n")); } return EFI_SUCCESS; diff --git a/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c b/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c index 90962caffd..55295c1029 100644 --- a/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c +++ b/ArmVirtPkg/Library/ArmVirtPciHostBridgeUtilityLib/ArmVirtPciHostBridgeUtilityLib.c @@ -19,30 +19,30 @@ #pragma pack(1) typedef struct { - ACPI_HID_DEVICE_PATH AcpiDevicePath; - EFI_DEVICE_PATH_PROTOCOL EndDevicePath; + ACPI_HID_DEVICE_PATH AcpiDevicePath; + EFI_DEVICE_PATH_PROTOCOL EndDevicePath; } EFI_PCI_ROOT_BRIDGE_DEVICE_PATH; #pragma pack () GLOBAL_REMOVE_IF_UNREFERENCED -CHAR16 *mPciHostBridgeAcpiAddressSpaceTypeStr[] = { +CHAR16 *mPciHostBridgeAcpiAddressSpaceTypeStr[] = { L"Mem", L"I/O", L"Bus" }; -STATIC CONST EFI_PCI_ROOT_BRIDGE_DEVICE_PATH mEfiPciRootBridgeDevicePath = { +STATIC CONST EFI_PCI_ROOT_BRIDGE_DEVICE_PATH mEfiPciRootBridgeDevicePath = { { { ACPI_DEVICE_PATH, ACPI_DP, { - (UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), - (UINT8) ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8) + (UINT8)(sizeof (ACPI_HID_DEVICE_PATH)), + (UINT8)((sizeof (ACPI_HID_DEVICE_PATH)) >> 8) } }, EISA_PNP_ID (0x0A03), // HID - 0 // UID + 0 // UID }, { @@ -55,13 +55,12 @@ STATIC CONST EFI_PCI_ROOT_BRIDGE_DEVICE_PATH mEfiPciRootBridgeDevicePath = { } }; - GLOBAL_REMOVE_IF_UNREFERENCED -CHAR16 *mPciHostBridgeLibAcpiAddressSpaceTypeStr[] = { +CHAR16 *mPciHostBridgeLibAcpiAddressSpaceTypeStr[] = { L"Mem", L"I/O", L"Bus" }; -STATIC PCI_ROOT_BRIDGE mRootBridge; +STATIC PCI_ROOT_BRIDGE mRootBridge; /** Utility function to return all the root bridge instances in an array. @@ -84,18 +83,18 @@ STATIC PCI_ROOT_BRIDGE mRootBridge; PCI_ROOT_BRIDGE * EFIAPI PciHostBridgeUtilityGetRootBridges ( - OUT UINTN *Count, - IN UINT64 Attributes, - IN UINT64 AllocationAttributes, - IN BOOLEAN DmaAbove4G, - IN BOOLEAN NoExtendedConfigSpace, - IN UINTN BusMin, - IN UINTN BusMax, - IN PCI_ROOT_BRIDGE_APERTURE *Io, - IN PCI_ROOT_BRIDGE_APERTURE *Mem, - IN PCI_ROOT_BRIDGE_APERTURE *MemAbove4G, - IN PCI_ROOT_BRIDGE_APERTURE *PMem, - IN PCI_ROOT_BRIDGE_APERTURE *PMemAbove4G + OUT UINTN *Count, + IN UINT64 Attributes, + IN UINT64 AllocationAttributes, + IN BOOLEAN DmaAbove4G, + IN BOOLEAN NoExtendedConfigSpace, + IN UINTN BusMin, + IN UINTN BusMax, + IN PCI_ROOT_BRIDGE_APERTURE *Io, + IN PCI_ROOT_BRIDGE_APERTURE *Mem, + IN PCI_ROOT_BRIDGE_APERTURE *MemAbove4G, + IN PCI_ROOT_BRIDGE_APERTURE *PMem, + IN PCI_ROOT_BRIDGE_APERTURE *PMemAbove4G ) { if ((Count == NULL) || @@ -103,38 +102,38 @@ PciHostBridgeUtilityGetRootBridges ( (Mem == NULL) || (MemAbove4G == NULL) || (PMem == NULL) || - (PMemAbove4G == NULL)) { + (PMemAbove4G == NULL)) + { return NULL; } - *Count = 1; - mRootBridge.Segment = 0; - mRootBridge.Supports = Attributes; - mRootBridge.Attributes = Attributes; + mRootBridge.Segment = 0; + mRootBridge.Supports = Attributes; + mRootBridge.Attributes = Attributes; mRootBridge.DmaAbove4G = DmaAbove4G; mRootBridge.NoExtendedConfigSpace = NoExtendedConfigSpace; mRootBridge.ResourceAssigned = FALSE; - mRootBridge.AllocationAttributes = AllocationAttributes; - - mRootBridge.Bus.Base = BusMin; - mRootBridge.Bus.Limit = BusMax; - mRootBridge.Io.Base = Io->Base; - mRootBridge.Io.Limit = Io->Limit; - mRootBridge.Mem.Base = Mem->Base; - mRootBridge.Mem.Limit = Mem->Limit; - mRootBridge.MemAbove4G.Base = MemAbove4G->Base; - mRootBridge.MemAbove4G.Limit = MemAbove4G->Limit; - mRootBridge.PMem.Base = PMem->Base; - mRootBridge.PMem.Limit = PMem->Limit; - mRootBridge.PMemAbove4G.Base = PMemAbove4G->Base; - mRootBridge.PMemAbove4G.Limit = PMemAbove4G->Limit; + mRootBridge.AllocationAttributes = AllocationAttributes; + + mRootBridge.Bus.Base = BusMin; + mRootBridge.Bus.Limit = BusMax; + mRootBridge.Io.Base = Io->Base; + mRootBridge.Io.Limit = Io->Limit; + mRootBridge.Mem.Base = Mem->Base; + mRootBridge.Mem.Limit = Mem->Limit; + mRootBridge.MemAbove4G.Base = MemAbove4G->Base; + mRootBridge.MemAbove4G.Limit = MemAbove4G->Limit; + mRootBridge.PMem.Base = PMem->Base; + mRootBridge.PMem.Limit = PMem->Limit; + mRootBridge.PMemAbove4G.Base = PMemAbove4G->Base; + mRootBridge.PMemAbove4G.Limit = PMemAbove4G->Limit; mRootBridge.DevicePath = - (EFI_DEVICE_PATH_PROTOCOL*)&mEfiPciRootBridgeDevicePath; + (EFI_DEVICE_PATH_PROTOCOL *)&mEfiPciRootBridgeDevicePath; return &mRootBridge; } @@ -149,8 +148,8 @@ PciHostBridgeUtilityGetRootBridges ( VOID EFIAPI PciHostBridgeUtilityFreeRootBridges ( - IN PCI_ROOT_BRIDGE *Bridges, - IN UINTN Count + IN PCI_ROOT_BRIDGE *Bridges, + IN UINTN Count ) { // Nothing to do here. @@ -176,18 +175,20 @@ PciHostBridgeUtilityResourceConflict ( IN VOID *Configuration ) { - EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *Descriptor; - UINTN RootBridgeIndex; + EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *Descriptor; + UINTN RootBridgeIndex; + DEBUG ((DEBUG_ERROR, "PciHostBridge: Resource conflict happens!\n")); RootBridgeIndex = 0; - Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR*)Configuration; + Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *)Configuration; while (Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR) { DEBUG ((DEBUG_ERROR, "RootBridge[%d]:\n", RootBridgeIndex++)); - for (; Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR; Descriptor++) { - ASSERT (Descriptor->ResType < - ARRAY_SIZE (mPciHostBridgeAcpiAddressSpaceTypeStr) - ); + for ( ; Descriptor->Desc == ACPI_ADDRESS_SPACE_DESCRIPTOR; Descriptor++) { + ASSERT ( + Descriptor->ResType < + ARRAY_SIZE (mPciHostBridgeAcpiAddressSpaceTypeStr) + ); DEBUG (( DEBUG_ERROR, " %s: Length/Alignment = 0x%lx / 0x%lx\n", @@ -207,12 +208,13 @@ PciHostBridgeUtilityResourceConflict ( )); } } + // // Skip the END descriptor for root bridge // ASSERT (Descriptor->Desc == ACPI_END_TAG_DESCRIPTOR); - Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR*)( - (EFI_ACPI_END_TAG_DESCRIPTOR*)Descriptor + 1 - ); + Descriptor = (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *)( + (EFI_ACPI_END_TAG_DESCRIPTOR *)Descriptor + 1 + ); } } diff --git a/ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.c b/ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.c index 419ed7d50f..c7065b7ec5 100644 --- a/ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.c +++ b/ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.c @@ -27,7 +27,7 @@ #include -STATIC UINT32 mArmPsciMethod; +STATIC UINT32 mArmPsciMethod; RETURN_STATUS EFIAPI @@ -35,16 +35,24 @@ ArmPsciResetSystemLibConstructor ( VOID ) { - EFI_STATUS Status; - FDT_CLIENT_PROTOCOL *FdtClient; - CONST VOID *Prop; - - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + EFI_STATUS Status; + FDT_CLIENT_PROTOCOL *FdtClient; + CONST VOID *Prop; + + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); - Status = FdtClient->FindCompatibleNodeProperty (FdtClient, "arm,psci-0.2", - "method", &Prop, NULL); + Status = FdtClient->FindCompatibleNodeProperty ( + FdtClient, + "arm,psci-0.2", + "method", + &Prop, + NULL + ); if (EFI_ERROR (Status)) { return Status; } @@ -54,10 +62,15 @@ ArmPsciResetSystemLibConstructor ( } else if (AsciiStrnCmp (Prop, "smc", 3) == 0) { mArmPsciMethod = 2; } else { - DEBUG ((DEBUG_ERROR, "%a: Unknown PSCI method \"%a\"\n", __FUNCTION__, - Prop)); + DEBUG (( + DEBUG_ERROR, + "%a: Unknown PSCI method \"%a\"\n", + __FUNCTION__, + Prop + )); return EFI_NOT_FOUND; } + return EFI_SUCCESS; } @@ -75,24 +88,24 @@ ResetCold ( VOID ) { - ARM_SMC_ARGS ArmSmcArgs; - ARM_HVC_ARGS ArmHvcArgs; + ARM_SMC_ARGS ArmSmcArgs; + ARM_HVC_ARGS ArmHvcArgs; // Send a PSCI 0.2 SYSTEM_RESET command ArmSmcArgs.Arg0 = ARM_SMC_ID_PSCI_SYSTEM_RESET; ArmHvcArgs.Arg0 = ARM_SMC_ID_PSCI_SYSTEM_RESET; switch (mArmPsciMethod) { - case 1: - ArmCallHvc (&ArmHvcArgs); - break; + case 1: + ArmCallHvc (&ArmHvcArgs); + break; - case 2: - ArmCallSmc (&ArmSmcArgs); - break; + case 2: + ArmCallSmc (&ArmSmcArgs); + break; - default: - DEBUG ((DEBUG_ERROR, "%a: no PSCI method defined\n", __FUNCTION__)); + default: + DEBUG ((DEBUG_ERROR, "%a: no PSCI method defined\n", __FUNCTION__)); } } @@ -124,24 +137,24 @@ ResetShutdown ( VOID ) { - ARM_SMC_ARGS ArmSmcArgs; - ARM_HVC_ARGS ArmHvcArgs; + ARM_SMC_ARGS ArmSmcArgs; + ARM_HVC_ARGS ArmHvcArgs; // Send a PSCI 0.2 SYSTEM_OFF command ArmSmcArgs.Arg0 = ARM_SMC_ID_PSCI_SYSTEM_OFF; ArmHvcArgs.Arg0 = ARM_SMC_ID_PSCI_SYSTEM_OFF; switch (mArmPsciMethod) { - case 1: - ArmCallHvc (&ArmHvcArgs); - break; + case 1: + ArmCallHvc (&ArmHvcArgs); + break; - case 2: - ArmCallSmc (&ArmSmcArgs); - break; + case 2: + ArmCallSmc (&ArmSmcArgs); + break; - default: - DEBUG ((DEBUG_ERROR, "%a: no PSCI method defined\n", __FUNCTION__)); + default: + DEBUG ((DEBUG_ERROR, "%a: no PSCI method defined\n", __FUNCTION__)); } } @@ -159,8 +172,8 @@ ResetShutdown ( VOID EFIAPI ResetPlatformSpecific ( - IN UINTN DataSize, - IN VOID *ResetData + IN UINTN DataSize, + IN VOID *ResetData ) { // Map the platform specific reset as reboot @@ -182,30 +195,30 @@ ResetPlatformSpecific ( VOID EFIAPI ResetSystem ( - IN EFI_RESET_TYPE ResetType, - IN EFI_STATUS ResetStatus, - IN UINTN DataSize, - IN VOID *ResetData OPTIONAL + IN EFI_RESET_TYPE ResetType, + IN EFI_STATUS ResetStatus, + IN UINTN DataSize, + IN VOID *ResetData OPTIONAL ) { switch (ResetType) { - case EfiResetWarm: - ResetWarm (); - break; + case EfiResetWarm: + ResetWarm (); + break; - case EfiResetCold: - ResetCold (); - break; + case EfiResetCold: + ResetCold (); + break; - case EfiResetShutdown: - ResetShutdown (); - return; + case EfiResetShutdown: + ResetShutdown (); + return; - case EfiResetPlatformSpecific: - ResetPlatformSpecific (DataSize, ResetData); - return; + case EfiResetPlatformSpecific: + ResetPlatformSpecific (DataSize, ResetData); + return; - default: - return; + default: + return; } } diff --git a/ArmVirtPkg/Library/ArmVirtPsciResetSystemPeiLib/ArmVirtPsciResetSystemPeiLib.c b/ArmVirtPkg/Library/ArmVirtPsciResetSystemPeiLib/ArmVirtPsciResetSystemPeiLib.c index 394a04e3c3..03d14fe432 100644 --- a/ArmVirtPkg/Library/ArmVirtPsciResetSystemPeiLib/ArmVirtPsciResetSystemPeiLib.c +++ b/ArmVirtPkg/Library/ArmVirtPsciResetSystemPeiLib/ArmVirtPsciResetSystemPeiLib.c @@ -34,20 +34,20 @@ DiscoverPsciMethod ( VOID ) { - VOID *DeviceTreeBase; - INT32 Node, Prev; - INT32 Len; - CONST CHAR8 *Compatible; - CONST CHAR8 *CompatibleItem; - CONST VOID *Prop; - - DeviceTreeBase = (VOID*)(UINTN)PcdGet64 (PcdDeviceTreeInitialBaseAddress); + VOID *DeviceTreeBase; + INT32 Node, Prev; + INT32 Len; + CONST CHAR8 *Compatible; + CONST CHAR8 *CompatibleItem; + CONST VOID *Prop; + + DeviceTreeBase = (VOID *)(UINTN)PcdGet64 (PcdDeviceTreeInitialBaseAddress); ASSERT (fdt_check_header (DeviceTreeBase) == 0); // // Enumerate all FDT nodes looking for the PSCI node and capture the method // - for (Prev = 0;; Prev = Node) { + for (Prev = 0; ; Prev = Node) { Node = fdt_next_node (DeviceTreeBase, Prev, NULL); if (Node < 0) { break; @@ -62,16 +62,19 @@ DiscoverPsciMethod ( // Iterate over the NULL-separated items in the compatible string // for (CompatibleItem = Compatible; CompatibleItem < Compatible + Len; - CompatibleItem += 1 + AsciiStrLen (CompatibleItem)) { - + CompatibleItem += 1 + AsciiStrLen (CompatibleItem)) + { if (AsciiStrCmp (CompatibleItem, "arm,psci-0.2") != 0) { continue; } Prop = fdt_getprop (DeviceTreeBase, Node, "method", NULL); if (!Prop) { - DEBUG ((DEBUG_ERROR, "%a: Missing PSCI method property\n", - __FUNCTION__)); + DEBUG (( + DEBUG_ERROR, + "%a: Missing PSCI method property\n", + __FUNCTION__ + )); return PsciMethodUnknown; } @@ -80,39 +83,44 @@ DiscoverPsciMethod ( } else if (AsciiStrnCmp (Prop, "smc", 3) == 0) { return PsciMethodSmc; } else { - DEBUG ((DEBUG_ERROR, "%a: Unknown PSCI method \"%a\"\n", __FUNCTION__, - Prop)); + DEBUG (( + DEBUG_ERROR, + "%a: Unknown PSCI method \"%a\"\n", + __FUNCTION__, + Prop + )); return PsciMethodUnknown; } } } + return PsciMethodUnknown; } STATIC VOID PerformPsciAction ( - IN UINTN Arg0 + IN UINTN Arg0 ) { - ARM_SMC_ARGS ArmSmcArgs; - ARM_HVC_ARGS ArmHvcArgs; + ARM_SMC_ARGS ArmSmcArgs; + ARM_HVC_ARGS ArmHvcArgs; ArmSmcArgs.Arg0 = Arg0; ArmHvcArgs.Arg0 = Arg0; switch (DiscoverPsciMethod ()) { - case PsciMethodHvc: - ArmCallHvc (&ArmHvcArgs); - break; + case PsciMethodHvc: + ArmCallHvc (&ArmHvcArgs); + break; - case PsciMethodSmc: - ArmCallSmc (&ArmSmcArgs); - break; + case PsciMethodSmc: + ArmCallSmc (&ArmSmcArgs); + break; - default: - DEBUG ((DEBUG_ERROR, "%a: no PSCI method defined\n", __FUNCTION__)); - ASSERT (FALSE); + default: + DEBUG ((DEBUG_ERROR, "%a: no PSCI method defined\n", __FUNCTION__)); + ASSERT (FALSE); } } @@ -180,8 +188,8 @@ ResetShutdown ( VOID EFIAPI ResetPlatformSpecific ( - IN UINTN DataSize, - IN VOID *ResetData + IN UINTN DataSize, + IN VOID *ResetData ) { // Map the platform specific reset as reboot @@ -203,30 +211,30 @@ ResetPlatformSpecific ( VOID EFIAPI ResetSystem ( - IN EFI_RESET_TYPE ResetType, - IN EFI_STATUS ResetStatus, - IN UINTN DataSize, - IN VOID *ResetData OPTIONAL + IN EFI_RESET_TYPE ResetType, + IN EFI_STATUS ResetStatus, + IN UINTN DataSize, + IN VOID *ResetData OPTIONAL ) { switch (ResetType) { - case EfiResetWarm: - ResetWarm (); - break; + case EfiResetWarm: + ResetWarm (); + break; - case EfiResetCold: - ResetCold (); - break; + case EfiResetCold: + ResetCold (); + break; - case EfiResetShutdown: - ResetShutdown (); - return; + case EfiResetShutdown: + ResetShutdown (); + return; - case EfiResetPlatformSpecific: - ResetPlatformSpecific (DataSize, ResetData); - return; + case EfiResetPlatformSpecific: + ResetPlatformSpecific (DataSize, ResetData); + return; - default: - return; + default: + return; } } diff --git a/ArmVirtPkg/Library/ArmVirtTimerFdtClientLib/ArmVirtTimerFdtClientLib.c b/ArmVirtPkg/Library/ArmVirtTimerFdtClientLib/ArmVirtTimerFdtClientLib.c index 35d61feefc..38dd6c5333 100644 --- a/ArmVirtPkg/Library/ArmVirtTimerFdtClientLib/ArmVirtTimerFdtClientLib.c +++ b/ArmVirtPkg/Library/ArmVirtTimerFdtClientLib/ArmVirtTimerFdtClientLib.c @@ -18,9 +18,9 @@ #pragma pack (1) typedef struct { - UINT32 Type; - UINT32 Number; - UINT32 Flags; + UINT32 Type; + UINT32 Number; + UINT32 Flags; } INTERRUPT_PROPERTY; #pragma pack () @@ -30,25 +30,35 @@ ArmVirtTimerFdtClientLibConstructor ( VOID ) { - EFI_STATUS Status; - FDT_CLIENT_PROTOCOL *FdtClient; - CONST INTERRUPT_PROPERTY *InterruptProp; - UINT32 PropSize; - INT32 SecIntrNum, IntrNum, VirtIntrNum, HypIntrNum; - RETURN_STATUS PcdStatus; - - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + EFI_STATUS Status; + FDT_CLIENT_PROTOCOL *FdtClient; + CONST INTERRUPT_PROPERTY *InterruptProp; + UINT32 PropSize; + INT32 SecIntrNum, IntrNum, VirtIntrNum, HypIntrNum; + RETURN_STATUS PcdStatus; + + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); - Status = FdtClient->FindCompatibleNodeProperty (FdtClient, "arm,armv7-timer", - "interrupts", (CONST VOID **)&InterruptProp, - &PropSize); + Status = FdtClient->FindCompatibleNodeProperty ( + FdtClient, + "arm,armv7-timer", + "interrupts", + (CONST VOID **)&InterruptProp, + &PropSize + ); if (Status == EFI_NOT_FOUND) { - Status = FdtClient->FindCompatibleNodeProperty (FdtClient, - "arm,armv8-timer", "interrupts", + Status = FdtClient->FindCompatibleNodeProperty ( + FdtClient, + "arm,armv8-timer", + "interrupts", (CONST VOID **)&InterruptProp, - &PropSize); + &PropSize + ); } if (EFI_ERROR (Status)) { @@ -68,10 +78,16 @@ ArmVirtTimerFdtClientLibConstructor ( VirtIntrNum = SwapBytes32 (InterruptProp[2].Number) + (InterruptProp[2].Type ? 16 : 0); HypIntrNum = PropSize < 48 ? 0 : SwapBytes32 (InterruptProp[3].Number) - + (InterruptProp[3].Type ? 16 : 0); - - DEBUG ((DEBUG_INFO, "Found Timer interrupts %d, %d, %d, %d\n", - SecIntrNum, IntrNum, VirtIntrNum, HypIntrNum)); + + (InterruptProp[3].Type ? 16 : 0); + + DEBUG (( + DEBUG_INFO, + "Found Timer interrupts %d, %d, %d, %d\n", + SecIntrNum, + IntrNum, + VirtIntrNum, + HypIntrNum + )); PcdStatus = PcdSet32S (PcdArmArchTimerSecIntrNum, SecIntrNum); ASSERT_RETURN_ERROR (PcdStatus); diff --git a/ArmVirtPkg/Library/BaseCachingPciExpressLib/PciExpressLib.c b/ArmVirtPkg/Library/BaseCachingPciExpressLib/PciExpressLib.c index 0cae6ec156..2474128697 100644 --- a/ArmVirtPkg/Library/BaseCachingPciExpressLib/PciExpressLib.c +++ b/ArmVirtPkg/Library/BaseCachingPciExpressLib/PciExpressLib.c @@ -10,7 +10,6 @@ **/ - #include #include @@ -19,7 +18,6 @@ #include #include - /** Assert the validity of a PCI address. A valid PCI address should contain 1's only in the low 28 bits. @@ -62,7 +60,7 @@ PciExpressRegisterForRuntimeAccess ( return RETURN_UNSUPPORTED; } -STATIC UINT64 mPciExpressBaseAddress; +STATIC UINT64 mPciExpressBaseAddress; RETURN_STATUS EFIAPI @@ -74,19 +72,18 @@ PciExpressLibInitialize ( return RETURN_SUCCESS; } - /** Gets the base address of PCI Express. @return The base address of PCI Express. **/ -VOID* +VOID * GetPciExpressBaseAddress ( VOID ) { - return (VOID*)(UINTN) mPciExpressBaseAddress; + return (VOID *)(UINTN)mPciExpressBaseAddress; } /** @@ -107,11 +104,11 @@ GetPciExpressBaseAddress ( UINT8 EFIAPI PciExpressRead8 ( - IN UINTN Address + IN UINTN Address ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioRead8 ((UINTN) GetPciExpressBaseAddress () + Address); + return MmioRead8 ((UINTN)GetPciExpressBaseAddress () + Address); } /** @@ -133,12 +130,12 @@ PciExpressRead8 ( UINT8 EFIAPI PciExpressWrite8 ( - IN UINTN Address, - IN UINT8 Value + IN UINTN Address, + IN UINT8 Value ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioWrite8 ((UINTN) GetPciExpressBaseAddress () + Address, Value); + return MmioWrite8 ((UINTN)GetPciExpressBaseAddress () + Address, Value); } /** @@ -164,12 +161,12 @@ PciExpressWrite8 ( UINT8 EFIAPI PciExpressOr8 ( - IN UINTN Address, - IN UINT8 OrData + IN UINTN Address, + IN UINT8 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioOr8 ((UINTN) GetPciExpressBaseAddress () + Address, OrData); + return MmioOr8 ((UINTN)GetPciExpressBaseAddress () + Address, OrData); } /** @@ -195,12 +192,12 @@ PciExpressOr8 ( UINT8 EFIAPI PciExpressAnd8 ( - IN UINTN Address, - IN UINT8 AndData + IN UINTN Address, + IN UINT8 AndData ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioAnd8 ((UINTN) GetPciExpressBaseAddress () + Address, AndData); + return MmioAnd8 ((UINTN)GetPciExpressBaseAddress () + Address, AndData); } /** @@ -228,14 +225,14 @@ PciExpressAnd8 ( UINT8 EFIAPI PciExpressAndThenOr8 ( - IN UINTN Address, - IN UINT8 AndData, - IN UINT8 OrData + IN UINTN Address, + IN UINT8 AndData, + IN UINT8 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioAndThenOr8 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, AndData, OrData ); @@ -265,14 +262,14 @@ PciExpressAndThenOr8 ( UINT8 EFIAPI PciExpressBitFieldRead8 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldRead8 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit ); @@ -305,15 +302,15 @@ PciExpressBitFieldRead8 ( UINT8 EFIAPI PciExpressBitFieldWrite8 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT8 Value + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT8 Value ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldWrite8 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, Value @@ -350,15 +347,15 @@ PciExpressBitFieldWrite8 ( UINT8 EFIAPI PciExpressBitFieldOr8 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT8 OrData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT8 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldOr8 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, OrData @@ -395,15 +392,15 @@ PciExpressBitFieldOr8 ( UINT8 EFIAPI PciExpressBitFieldAnd8 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT8 AndData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT8 AndData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldAnd8 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, AndData @@ -444,16 +441,16 @@ PciExpressBitFieldAnd8 ( UINT8 EFIAPI PciExpressBitFieldAndThenOr8 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT8 AndData, - IN UINT8 OrData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT8 AndData, + IN UINT8 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldAndThenOr8 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, AndData, @@ -480,11 +477,11 @@ PciExpressBitFieldAndThenOr8 ( UINT16 EFIAPI PciExpressRead16 ( - IN UINTN Address + IN UINTN Address ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioRead16 ((UINTN) GetPciExpressBaseAddress () + Address); + return MmioRead16 ((UINTN)GetPciExpressBaseAddress () + Address); } /** @@ -507,12 +504,12 @@ PciExpressRead16 ( UINT16 EFIAPI PciExpressWrite16 ( - IN UINTN Address, - IN UINT16 Value + IN UINTN Address, + IN UINT16 Value ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioWrite16 ((UINTN) GetPciExpressBaseAddress () + Address, Value); + return MmioWrite16 ((UINTN)GetPciExpressBaseAddress () + Address, Value); } /** @@ -539,12 +536,12 @@ PciExpressWrite16 ( UINT16 EFIAPI PciExpressOr16 ( - IN UINTN Address, - IN UINT16 OrData + IN UINTN Address, + IN UINT16 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioOr16 ((UINTN) GetPciExpressBaseAddress () + Address, OrData); + return MmioOr16 ((UINTN)GetPciExpressBaseAddress () + Address, OrData); } /** @@ -571,12 +568,12 @@ PciExpressOr16 ( UINT16 EFIAPI PciExpressAnd16 ( - IN UINTN Address, - IN UINT16 AndData + IN UINTN Address, + IN UINT16 AndData ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioAnd16 ((UINTN) GetPciExpressBaseAddress () + Address, AndData); + return MmioAnd16 ((UINTN)GetPciExpressBaseAddress () + Address, AndData); } /** @@ -605,14 +602,14 @@ PciExpressAnd16 ( UINT16 EFIAPI PciExpressAndThenOr16 ( - IN UINTN Address, - IN UINT16 AndData, - IN UINT16 OrData + IN UINTN Address, + IN UINT16 AndData, + IN UINT16 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioAndThenOr16 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, AndData, OrData ); @@ -643,14 +640,14 @@ PciExpressAndThenOr16 ( UINT16 EFIAPI PciExpressBitFieldRead16 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldRead16 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit ); @@ -684,15 +681,15 @@ PciExpressBitFieldRead16 ( UINT16 EFIAPI PciExpressBitFieldWrite16 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT16 Value + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT16 Value ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldWrite16 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, Value @@ -730,15 +727,15 @@ PciExpressBitFieldWrite16 ( UINT16 EFIAPI PciExpressBitFieldOr16 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT16 OrData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT16 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldOr16 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, OrData @@ -776,15 +773,15 @@ PciExpressBitFieldOr16 ( UINT16 EFIAPI PciExpressBitFieldAnd16 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT16 AndData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT16 AndData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldAnd16 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, AndData @@ -826,16 +823,16 @@ PciExpressBitFieldAnd16 ( UINT16 EFIAPI PciExpressBitFieldAndThenOr16 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT16 AndData, - IN UINT16 OrData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT16 AndData, + IN UINT16 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldAndThenOr16 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, AndData, @@ -862,11 +859,11 @@ PciExpressBitFieldAndThenOr16 ( UINT32 EFIAPI PciExpressRead32 ( - IN UINTN Address + IN UINTN Address ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioRead32 ((UINTN) GetPciExpressBaseAddress () + Address); + return MmioRead32 ((UINTN)GetPciExpressBaseAddress () + Address); } /** @@ -889,12 +886,12 @@ PciExpressRead32 ( UINT32 EFIAPI PciExpressWrite32 ( - IN UINTN Address, - IN UINT32 Value + IN UINTN Address, + IN UINT32 Value ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioWrite32 ((UINTN) GetPciExpressBaseAddress () + Address, Value); + return MmioWrite32 ((UINTN)GetPciExpressBaseAddress () + Address, Value); } /** @@ -921,12 +918,12 @@ PciExpressWrite32 ( UINT32 EFIAPI PciExpressOr32 ( - IN UINTN Address, - IN UINT32 OrData + IN UINTN Address, + IN UINT32 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioOr32 ((UINTN) GetPciExpressBaseAddress () + Address, OrData); + return MmioOr32 ((UINTN)GetPciExpressBaseAddress () + Address, OrData); } /** @@ -953,12 +950,12 @@ PciExpressOr32 ( UINT32 EFIAPI PciExpressAnd32 ( - IN UINTN Address, - IN UINT32 AndData + IN UINTN Address, + IN UINT32 AndData ) { ASSERT_INVALID_PCI_ADDRESS (Address); - return MmioAnd32 ((UINTN) GetPciExpressBaseAddress () + Address, AndData); + return MmioAnd32 ((UINTN)GetPciExpressBaseAddress () + Address, AndData); } /** @@ -987,14 +984,14 @@ PciExpressAnd32 ( UINT32 EFIAPI PciExpressAndThenOr32 ( - IN UINTN Address, - IN UINT32 AndData, - IN UINT32 OrData + IN UINTN Address, + IN UINT32 AndData, + IN UINT32 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioAndThenOr32 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, AndData, OrData ); @@ -1025,14 +1022,14 @@ PciExpressAndThenOr32 ( UINT32 EFIAPI PciExpressBitFieldRead32 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldRead32 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit ); @@ -1066,15 +1063,15 @@ PciExpressBitFieldRead32 ( UINT32 EFIAPI PciExpressBitFieldWrite32 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT32 Value + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT32 Value ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldWrite32 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, Value @@ -1112,15 +1109,15 @@ PciExpressBitFieldWrite32 ( UINT32 EFIAPI PciExpressBitFieldOr32 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT32 OrData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT32 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldOr32 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, OrData @@ -1158,15 +1155,15 @@ PciExpressBitFieldOr32 ( UINT32 EFIAPI PciExpressBitFieldAnd32 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT32 AndData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT32 AndData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldAnd32 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, AndData @@ -1208,16 +1205,16 @@ PciExpressBitFieldAnd32 ( UINT32 EFIAPI PciExpressBitFieldAndThenOr32 ( - IN UINTN Address, - IN UINTN StartBit, - IN UINTN EndBit, - IN UINT32 AndData, - IN UINT32 OrData + IN UINTN Address, + IN UINTN StartBit, + IN UINTN EndBit, + IN UINT32 AndData, + IN UINT32 OrData ) { ASSERT_INVALID_PCI_ADDRESS (Address); return MmioBitFieldAndThenOr32 ( - (UINTN) GetPciExpressBaseAddress () + Address, + (UINTN)GetPciExpressBaseAddress () + Address, StartBit, EndBit, AndData, @@ -1251,12 +1248,12 @@ PciExpressBitFieldAndThenOr32 ( UINTN EFIAPI PciExpressReadBuffer ( - IN UINTN StartAddress, - IN UINTN Size, - OUT VOID *Buffer + IN UINTN StartAddress, + IN UINTN Size, + OUT VOID *Buffer ) { - UINTN ReturnValue; + UINTN ReturnValue; ASSERT_INVALID_PCI_ADDRESS (StartAddress); ASSERT (((StartAddress & 0xFFF) + Size) <= 0x1000); @@ -1277,41 +1274,41 @@ PciExpressReadBuffer ( // Read a byte if StartAddress is byte aligned // *(volatile UINT8 *)Buffer = PciExpressRead8 (StartAddress); - StartAddress += sizeof (UINT8); - Size -= sizeof (UINT8); - Buffer = (UINT8*)Buffer + 1; + StartAddress += sizeof (UINT8); + Size -= sizeof (UINT8); + Buffer = (UINT8 *)Buffer + 1; } - if (Size >= sizeof (UINT16) && (StartAddress & 2) != 0) { + if ((Size >= sizeof (UINT16)) && ((StartAddress & 2) != 0)) { // // Read a word if StartAddress is word aligned // - WriteUnaligned16 ((UINT16 *) Buffer, (UINT16) PciExpressRead16 (StartAddress)); + WriteUnaligned16 ((UINT16 *)Buffer, (UINT16)PciExpressRead16 (StartAddress)); StartAddress += sizeof (UINT16); - Size -= sizeof (UINT16); - Buffer = (UINT16*)Buffer + 1; + Size -= sizeof (UINT16); + Buffer = (UINT16 *)Buffer + 1; } while (Size >= sizeof (UINT32)) { // // Read as many double words as possible // - WriteUnaligned32 ((UINT32 *) Buffer, (UINT32) PciExpressRead32 (StartAddress)); + WriteUnaligned32 ((UINT32 *)Buffer, (UINT32)PciExpressRead32 (StartAddress)); StartAddress += sizeof (UINT32); - Size -= sizeof (UINT32); - Buffer = (UINT32*)Buffer + 1; + Size -= sizeof (UINT32); + Buffer = (UINT32 *)Buffer + 1; } if (Size >= sizeof (UINT16)) { // // Read the last remaining word if exist // - WriteUnaligned16 ((UINT16 *) Buffer, (UINT16) PciExpressRead16 (StartAddress)); + WriteUnaligned16 ((UINT16 *)Buffer, (UINT16)PciExpressRead16 (StartAddress)); StartAddress += sizeof (UINT16); - Size -= sizeof (UINT16); - Buffer = (UINT16*)Buffer + 1; + Size -= sizeof (UINT16); + Buffer = (UINT16 *)Buffer + 1; } if (Size >= sizeof (UINT8)) { @@ -1351,12 +1348,12 @@ PciExpressReadBuffer ( UINTN EFIAPI PciExpressWriteBuffer ( - IN UINTN StartAddress, - IN UINTN Size, - IN VOID *Buffer + IN UINTN StartAddress, + IN UINTN Size, + IN VOID *Buffer ) { - UINTN ReturnValue; + UINTN ReturnValue; ASSERT_INVALID_PCI_ADDRESS (StartAddress); ASSERT (((StartAddress & 0xFFF) + Size) <= 0x1000); @@ -1376,47 +1373,47 @@ PciExpressWriteBuffer ( // // Write a byte if StartAddress is byte aligned // - PciExpressWrite8 (StartAddress, *(UINT8*)Buffer); + PciExpressWrite8 (StartAddress, *(UINT8 *)Buffer); StartAddress += sizeof (UINT8); - Size -= sizeof (UINT8); - Buffer = (UINT8*)Buffer + 1; + Size -= sizeof (UINT8); + Buffer = (UINT8 *)Buffer + 1; } - if (Size >= sizeof (UINT16) && (StartAddress & 2) != 0) { + if ((Size >= sizeof (UINT16)) && ((StartAddress & 2) != 0)) { // // Write a word if StartAddress is word aligned // - PciExpressWrite16 (StartAddress, ReadUnaligned16 ((UINT16*)Buffer)); + PciExpressWrite16 (StartAddress, ReadUnaligned16 ((UINT16 *)Buffer)); StartAddress += sizeof (UINT16); - Size -= sizeof (UINT16); - Buffer = (UINT16*)Buffer + 1; + Size -= sizeof (UINT16); + Buffer = (UINT16 *)Buffer + 1; } while (Size >= sizeof (UINT32)) { // // Write as many double words as possible // - PciExpressWrite32 (StartAddress, ReadUnaligned32 ((UINT32*)Buffer)); + PciExpressWrite32 (StartAddress, ReadUnaligned32 ((UINT32 *)Buffer)); StartAddress += sizeof (UINT32); - Size -= sizeof (UINT32); - Buffer = (UINT32*)Buffer + 1; + Size -= sizeof (UINT32); + Buffer = (UINT32 *)Buffer + 1; } if (Size >= sizeof (UINT16)) { // // Write the last remaining word if exist // - PciExpressWrite16 (StartAddress, ReadUnaligned16 ((UINT16*)Buffer)); + PciExpressWrite16 (StartAddress, ReadUnaligned16 ((UINT16 *)Buffer)); StartAddress += sizeof (UINT16); - Size -= sizeof (UINT16); - Buffer = (UINT16*)Buffer + 1; + Size -= sizeof (UINT16); + Buffer = (UINT16 *)Buffer + 1; } if (Size >= sizeof (UINT8)) { // // Write the last remaining byte if exist // - PciExpressWrite8 (StartAddress, *(UINT8*)Buffer); + PciExpressWrite8 (StartAddress, *(UINT8 *)Buffer); } return ReturnValue; diff --git a/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c b/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c index 61c9c47127..5c01a9997e 100644 --- a/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c +++ b/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/EarlyFdt16550SerialPortHookLib.c @@ -83,6 +83,7 @@ GetSerialConsolePortAddress ( if (Path == NULL) { return EFI_NOT_FOUND; } + SerialConsoleNode = fdt_path_offset (Fdt, Path); } @@ -115,9 +116,9 @@ PlatformHookSerialPortInitialize ( VOID ) { - RETURN_STATUS Status; - VOID *DeviceTreeBase; - UINT64 SerialConsoleAddress; + RETURN_STATUS Status; + VOID *DeviceTreeBase; + UINT64 SerialConsoleAddress; if (PcdGet64 (PcdSerialRegisterBase) != 0) { return RETURN_SUCCESS; diff --git a/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c b/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c index 803725c3ce..6f8caf521c 100644 --- a/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c +++ b/ArmVirtPkg/Library/Fdt16550SerialPortHookLib/Fdt16550SerialPortHookLib.c @@ -35,8 +35,8 @@ PlatformHookSerialPortInitialize ( VOID ) { - VOID *Hob; - UINT64 *UartBase; + VOID *Hob; + UINT64 *UartBase; if (PcdGet64 (PcdSerialRegisterBase) != 0) { return RETURN_SUCCESS; diff --git a/ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.c b/ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.c index 3f96b1e450..c340212432 100644 --- a/ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.c +++ b/ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.c @@ -74,7 +74,7 @@ SerialPortGetBaseAddress ( // // Enumerate all FDT nodes looking for a PL011 and capture its base address // - for (Prev = 0;; Prev = Node) { + for (Prev = 0; ; Prev = Node) { Node = fdt_next_node (DeviceTreeBase, Prev, NULL); if (Node < 0) { break; @@ -89,11 +89,11 @@ SerialPortGetBaseAddress ( // Iterate over the NULL-separated items in the compatible string // for (CompatibleItem = Compatible; CompatibleItem < Compatible + Len; - CompatibleItem += 1 + AsciiStrLen (CompatibleItem)) { - + CompatibleItem += 1 + AsciiStrLen (CompatibleItem)) + { if (AsciiStrCmp (CompatibleItem, "arm,pl011") == 0) { NodeStatus = fdt_getprop (DeviceTreeBase, Node, "status", &Len); - if (NodeStatus != NULL && AsciiStrCmp (NodeStatus, "okay") != 0) { + if ((NodeStatus != NULL) && (AsciiStrCmp (NodeStatus, "okay") != 0)) { continue; } @@ -101,13 +101,14 @@ SerialPortGetBaseAddress ( if (Len != 16) { return 0; } + UartBase = (UINTN)fdt64_to_cpu (ReadUnaligned64 (RegProperty)); - BaudRate = (UINTN)FixedPcdGet64 (PcdUartDefaultBaudRate); + BaudRate = (UINTN)FixedPcdGet64 (PcdUartDefaultBaudRate); ReceiveFifoDepth = 0; // Use the default value for Fifo depth - Parity = (EFI_PARITY_TYPE)FixedPcdGet8 (PcdUartDefaultParity); - DataBits = FixedPcdGet8 (PcdUartDefaultDataBits); - StopBits = (EFI_STOP_BITS_TYPE) FixedPcdGet8 (PcdUartDefaultStopBits); + Parity = (EFI_PARITY_TYPE)FixedPcdGet8 (PcdUartDefaultParity); + DataBits = FixedPcdGet8 (PcdUartDefaultDataBits); + StopBits = (EFI_STOP_BITS_TYPE)FixedPcdGet8 (PcdUartDefaultStopBits); Status = PL011UartInitializePort ( UartBase, @@ -124,6 +125,7 @@ SerialPortGetBaseAddress ( } } } + return 0; } @@ -140,16 +142,17 @@ SerialPortGetBaseAddress ( UINTN EFIAPI SerialPortWrite ( - IN UINT8 *Buffer, - IN UINTN NumberOfBytes + IN UINT8 *Buffer, + IN UINTN NumberOfBytes ) { - UINT64 SerialRegisterBase; + UINT64 SerialRegisterBase; SerialRegisterBase = SerialPortGetBaseAddress (); if (SerialRegisterBase != 0) { return PL011UartWrite ((UINTN)SerialRegisterBase, Buffer, NumberOfBytes); } + return 0; } @@ -166,9 +169,9 @@ SerialPortWrite ( UINTN EFIAPI SerialPortRead ( - OUT UINT8 *Buffer, - IN UINTN NumberOfBytes -) + OUT UINT8 *Buffer, + IN UINTN NumberOfBytes + ) { return 0; } @@ -202,7 +205,7 @@ SerialPortPoll ( RETURN_STATUS EFIAPI SerialPortSetControl ( - IN UINT32 Control + IN UINT32 Control ) { return RETURN_UNSUPPORTED; @@ -221,7 +224,7 @@ SerialPortSetControl ( RETURN_STATUS EFIAPI SerialPortGetControl ( - OUT UINT32 *Control + OUT UINT32 *Control ) { return RETURN_UNSUPPORTED; @@ -263,14 +266,13 @@ SerialPortGetControl ( RETURN_STATUS EFIAPI SerialPortSetAttributes ( - IN OUT UINT64 *BaudRate, - IN OUT UINT32 *ReceiveFifoDepth, - IN OUT UINT32 *Timeout, - IN OUT EFI_PARITY_TYPE *Parity, - IN OUT UINT8 *DataBits, - IN OUT EFI_STOP_BITS_TYPE *StopBits + IN OUT UINT64 *BaudRate, + IN OUT UINT32 *ReceiveFifoDepth, + IN OUT UINT32 *Timeout, + IN OUT EFI_PARITY_TYPE *Parity, + IN OUT UINT8 *DataBits, + IN OUT EFI_STOP_BITS_TYPE *StopBits ) { return RETURN_UNSUPPORTED; } - diff --git a/ArmVirtPkg/Library/FdtPL011SerialPortLib/FdtPL011SerialPortLib.c b/ArmVirtPkg/Library/FdtPL011SerialPortLib/FdtPL011SerialPortLib.c index 23def28e12..614ea5a860 100644 --- a/ArmVirtPkg/Library/FdtPL011SerialPortLib/FdtPL011SerialPortLib.c +++ b/ArmVirtPkg/Library/FdtPL011SerialPortLib/FdtPL011SerialPortLib.c @@ -23,7 +23,7 @@ #include #include -STATIC UINTN mSerialBaseAddress; +STATIC UINTN mSerialBaseAddress; RETURN_STATUS EFIAPI @@ -57,9 +57,10 @@ FdtPL011SerialPortLibInitialize ( EFI_STOP_BITS_TYPE StopBits; Hob = GetFirstGuidHob (&gEarlyPL011BaseAddressGuid); - if (Hob == NULL || GET_GUID_HOB_DATA_SIZE (Hob) != sizeof *UartBase) { + if ((Hob == NULL) || (GET_GUID_HOB_DATA_SIZE (Hob) != sizeof *UartBase)) { return RETURN_NOT_FOUND; } + UartBase = GET_GUID_HOB_DATA (Hob); mSerialBaseAddress = (UINTN)*UartBase; @@ -67,11 +68,11 @@ FdtPL011SerialPortLibInitialize ( return RETURN_NOT_FOUND; } - BaudRate = (UINTN)PcdGet64 (PcdUartDefaultBaudRate); + BaudRate = (UINTN)PcdGet64 (PcdUartDefaultBaudRate); ReceiveFifoDepth = 0; // Use the default value for Fifo depth - Parity = (EFI_PARITY_TYPE)PcdGet8 (PcdUartDefaultParity); - DataBits = PcdGet8 (PcdUartDefaultDataBits); - StopBits = (EFI_STOP_BITS_TYPE) PcdGet8 (PcdUartDefaultStopBits); + Parity = (EFI_PARITY_TYPE)PcdGet8 (PcdUartDefaultParity); + DataBits = PcdGet8 (PcdUartDefaultDataBits); + StopBits = (EFI_STOP_BITS_TYPE)PcdGet8 (PcdUartDefaultStopBits); return PL011UartInitializePort ( mSerialBaseAddress, @@ -97,13 +98,14 @@ FdtPL011SerialPortLibInitialize ( UINTN EFIAPI SerialPortWrite ( - IN UINT8 *Buffer, - IN UINTN NumberOfBytes + IN UINT8 *Buffer, + IN UINTN NumberOfBytes ) { if (mSerialBaseAddress != 0) { return PL011UartWrite (mSerialBaseAddress, Buffer, NumberOfBytes); } + return 0; } @@ -120,13 +122,14 @@ SerialPortWrite ( UINTN EFIAPI SerialPortRead ( - OUT UINT8 *Buffer, - IN UINTN NumberOfBytes -) + OUT UINT8 *Buffer, + IN UINTN NumberOfBytes + ) { if (mSerialBaseAddress != 0) { return PL011UartRead (mSerialBaseAddress, Buffer, NumberOfBytes); } + return 0; } @@ -146,6 +149,7 @@ SerialPortPoll ( if (mSerialBaseAddress != 0) { return PL011UartPoll (mSerialBaseAddress); } + return FALSE; } @@ -185,15 +189,15 @@ SerialPortPoll ( RETURN_STATUS EFIAPI SerialPortSetAttributes ( - IN OUT UINT64 *BaudRate, - IN OUT UINT32 *ReceiveFifoDepth, - IN OUT UINT32 *Timeout, - IN OUT EFI_PARITY_TYPE *Parity, - IN OUT UINT8 *DataBits, - IN OUT EFI_STOP_BITS_TYPE *StopBits + IN OUT UINT64 *BaudRate, + IN OUT UINT32 *ReceiveFifoDepth, + IN OUT UINT32 *Timeout, + IN OUT EFI_PARITY_TYPE *Parity, + IN OUT UINT8 *DataBits, + IN OUT EFI_STOP_BITS_TYPE *StopBits ) { - RETURN_STATUS Status; + RETURN_STATUS Status; if (mSerialBaseAddress == 0) { Status = RETURN_UNSUPPORTED; @@ -225,10 +229,10 @@ SerialPortSetAttributes ( RETURN_STATUS EFIAPI SerialPortSetControl ( - IN UINT32 Control + IN UINT32 Control ) { - RETURN_STATUS Status; + RETURN_STATUS Status; if (mSerialBaseAddress == 0) { Status = RETURN_UNSUPPORTED; @@ -252,10 +256,10 @@ SerialPortSetControl ( RETURN_STATUS EFIAPI SerialPortGetControl ( - OUT UINT32 *Control + OUT UINT32 *Control ) { - RETURN_STATUS Status; + RETURN_STATUS Status; if (mSerialBaseAddress == 0) { Status = RETURN_UNSUPPORTED; @@ -265,4 +269,3 @@ SerialPortGetControl ( return Status; } - diff --git a/ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.c b/ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.c index 255eb0599e..30e43beb9a 100644 --- a/ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.c +++ b/ArmVirtPkg/Library/KvmtoolPlatformPeiLib/KvmtoolPlatformPeiLib.c @@ -38,15 +38,15 @@ PlatformPeim ( UINT64 *FdtHobData; UINT64 *UartHobData; - Base = (VOID*)(UINTN)PcdGet64 (PcdDeviceTreeInitialBaseAddress); + Base = (VOID *)(UINTN)PcdGet64 (PcdDeviceTreeInitialBaseAddress); if ((Base == NULL) || (fdt_check_header (Base) != 0)) { ASSERT (0); return EFI_INVALID_PARAMETER; } - FdtSize = fdt_totalsize (Base) + PcdGet32 (PcdDeviceTreeAllocationPadding); + FdtSize = fdt_totalsize (Base) + PcdGet32 (PcdDeviceTreeAllocationPadding); FdtPages = EFI_SIZE_TO_PAGES (FdtSize); - NewBase = AllocatePages (FdtPages); + NewBase = AllocatePages (FdtPages); if (NewBase == NULL) { ASSERT (0); return EFI_OUT_OF_RESOURCES; diff --git a/ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.c b/ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.c index 9371595895..89eee757d1 100644 --- a/ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.c +++ b/ArmVirtPkg/Library/KvmtoolRtcFdtClientLib/KvmtoolRtcFdtClientLib.c @@ -16,11 +16,11 @@ /** RTC Index register is at offset 0x0 */ -#define RTC_INDEX_REG_OFFSET 0x0ULL +#define RTC_INDEX_REG_OFFSET 0x0ULL /** RTC Target register is at offset 0x1 */ -#define RTC_TARGET_REG_OFFSET 0x1ULL +#define RTC_TARGET_REG_OFFSET 0x1ULL /** Add the RTC controller address range to the memory map. @@ -34,8 +34,8 @@ STATIC EFI_STATUS KvmtoolRtcMapMemory ( - IN EFI_HANDLE ImageHandle, - IN EFI_PHYSICAL_ADDRESS RtcPageBase + IN EFI_HANDLE ImageHandle, + IN EFI_PHYSICAL_ADDRESS RtcPageBase ) { EFI_STATUS Status; @@ -48,7 +48,8 @@ KvmtoolRtcMapMemory ( ); if (EFI_ERROR (Status)) { DEBUG (( - DEBUG_ERROR, "Failed to add memory space. Status = %r\n", + DEBUG_ERROR, + "Failed to add memory space. Status = %r\n", Status )); return Status; @@ -117,18 +118,18 @@ KvmtoolRtcMapMemory ( EFI_STATUS EFIAPI KvmtoolRtcFdtClientLibConstructor ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; - FDT_CLIENT_PROTOCOL *FdtClient; - INT32 Node; - CONST UINT32 *Reg; - UINT32 RegSize; - UINT64 RegBase; - UINT64 Range; - RETURN_STATUS PcdStatus; + EFI_STATUS Status; + FDT_CLIENT_PROTOCOL *FdtClient; + INT32 Node; + CONST UINT32 *Reg; + UINT32 RegSize; + UINT64 RegBase; + UINT64 Range; + RETURN_STATUS PcdStatus; Status = gBS->LocateProtocol ( &gFdtClientProtocolGuid, @@ -170,7 +171,7 @@ KvmtoolRtcFdtClientLibConstructor ( ASSERT (RegSize == 16); RegBase = SwapBytes64 (ReadUnaligned64 ((VOID *)&Reg[0])); - Range = SwapBytes64 (ReadUnaligned64 ((VOID *)&Reg[2])); + Range = SwapBytes64 (ReadUnaligned64 ((VOID *)&Reg[2])); DEBUG (( DEBUG_INFO, "Found motorola,mc146818 RTC @ 0x%Lx Range = 0x%x\n", diff --git a/ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c b/ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c index 63bb81ef91..29122856b6 100644 --- a/ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c +++ b/ArmVirtPkg/Library/KvmtoolVirtMemInfoLib/KvmtoolVirtMemInfoLib.c @@ -15,7 +15,7 @@ #include // Number of Virtual Memory Map Descriptors -#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 5 +#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 5 /** Return the Virtual Memory Map of your platform @@ -32,24 +32,24 @@ **/ VOID ArmVirtGetMemoryMap ( - OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap + OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap ) { ARM_MEMORY_REGION_DESCRIPTOR *VirtualMemoryTable; - UINTN Idx; - EFI_PHYSICAL_ADDRESS TopOfAddressSpace; + UINTN Idx; + EFI_PHYSICAL_ADDRESS TopOfAddressSpace; ASSERT (VirtualMemoryMap != NULL); TopOfAddressSpace = LShiftU64 (1ULL, ArmGetPhysicalAddressBits ()); - VirtualMemoryTable = (ARM_MEMORY_REGION_DESCRIPTOR*) - AllocatePages ( - EFI_SIZE_TO_PAGES ( - sizeof (ARM_MEMORY_REGION_DESCRIPTOR) * - MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS - ) - ); + VirtualMemoryTable = (ARM_MEMORY_REGION_DESCRIPTOR *) + AllocatePages ( + EFI_SIZE_TO_PAGES ( + sizeof (ARM_MEMORY_REGION_DESCRIPTOR) * + MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS + ) + ); if (VirtualMemoryTable == NULL) { DEBUG (( DEBUG_ERROR, @@ -75,24 +75,24 @@ ArmVirtGetMemoryMap ( // Peripheral space after DRAM VirtualMemoryTable[++Idx].PhysicalBase = PcdGet64 (PcdSystemMemoryBase) + PcdGet64 (PcdSystemMemorySize); - VirtualMemoryTable[Idx].VirtualBase = VirtualMemoryTable[Idx].PhysicalBase; - VirtualMemoryTable[Idx].Length = TopOfAddressSpace - - VirtualMemoryTable[Idx].PhysicalBase; - VirtualMemoryTable[Idx].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE; + VirtualMemoryTable[Idx].VirtualBase = VirtualMemoryTable[Idx].PhysicalBase; + VirtualMemoryTable[Idx].Length = TopOfAddressSpace - + VirtualMemoryTable[Idx].PhysicalBase; + VirtualMemoryTable[Idx].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_DEVICE; // Map the FV region as normal executable memory VirtualMemoryTable[++Idx].PhysicalBase = PcdGet64 (PcdFvBaseAddress); - VirtualMemoryTable[Idx].VirtualBase = VirtualMemoryTable[Idx].PhysicalBase; - VirtualMemoryTable[Idx].Length = FixedPcdGet32 (PcdFvSize); - VirtualMemoryTable[Idx].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK; + VirtualMemoryTable[Idx].VirtualBase = VirtualMemoryTable[Idx].PhysicalBase; + VirtualMemoryTable[Idx].Length = FixedPcdGet32 (PcdFvSize); + VirtualMemoryTable[Idx].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK; // End of Table - VirtualMemoryTable[++Idx].PhysicalBase = 0; - VirtualMemoryTable[Idx].VirtualBase = 0; - VirtualMemoryTable[Idx].Length = 0; - VirtualMemoryTable[Idx].Attributes = (ARM_MEMORY_REGION_ATTRIBUTES)0; + VirtualMemoryTable[++Idx].PhysicalBase = 0; + VirtualMemoryTable[Idx].VirtualBase = 0; + VirtualMemoryTable[Idx].Length = 0; + VirtualMemoryTable[Idx].Attributes = (ARM_MEMORY_REGION_ATTRIBUTES)0; - ASSERT((Idx + 1) <= MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS); + ASSERT ((Idx + 1) <= MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS); *VirtualMemoryMap = VirtualMemoryTable; } diff --git a/ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c b/ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c index 7a1bef12e8..39d2615b54 100644 --- a/ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c +++ b/ArmVirtPkg/Library/NorFlashKvmtoolLib/NorFlashKvmtool.c @@ -19,15 +19,15 @@ /** Macro defining the maximum number of Flash devices. */ -#define MAX_FLASH_DEVICES 4 +#define MAX_FLASH_DEVICES 4 /** Macro defining the cfi-flash label describing the UEFI variable store. */ -#define LABEL_UEFI_VAR_STORE "System-firmware" +#define LABEL_UEFI_VAR_STORE "System-firmware" STATIC NOR_FLASH_DESCRIPTION mNorFlashDevices[MAX_FLASH_DEVICES]; STATIC UINTN mNorFlashDeviceCount = 0; -STATIC INT32 mUefiVarStoreNode = MAX_INT32; +STATIC INT32 mUefiVarStoreNode = MAX_INT32; STATIC FDT_CLIENT_PROTOCOL *mFdtClient; /** This function performs platform specific actions to initialise @@ -40,7 +40,7 @@ NorFlashPlatformInitialization ( VOID ) { - EFI_STATUS Status; + EFI_STATUS Status; DEBUG ((DEBUG_INFO, "NorFlashPlatformInitialization\n")); @@ -89,24 +89,25 @@ NorFlashPlatformInitialization ( STATIC EFI_STATUS SetupVariableStore ( - IN NOR_FLASH_DESCRIPTION * FlashDevice + IN NOR_FLASH_DESCRIPTION *FlashDevice ) { - UINTN FlashRegion; - UINTN FlashNvStorageVariableBase; - UINTN FlashNvStorageFtwWorkingBase; - UINTN FlashNvStorageFtwSpareBase; - UINTN FlashNvStorageVariableSize; - UINTN FlashNvStorageFtwWorkingSize; - UINTN FlashNvStorageFtwSpareSize; - - FlashNvStorageVariableSize = PcdGet32 (PcdFlashNvStorageVariableSize); + UINTN FlashRegion; + UINTN FlashNvStorageVariableBase; + UINTN FlashNvStorageFtwWorkingBase; + UINTN FlashNvStorageFtwSpareBase; + UINTN FlashNvStorageVariableSize; + UINTN FlashNvStorageFtwWorkingSize; + UINTN FlashNvStorageFtwSpareSize; + + FlashNvStorageVariableSize = PcdGet32 (PcdFlashNvStorageVariableSize); FlashNvStorageFtwWorkingSize = PcdGet32 (PcdFlashNvStorageFtwWorkingSize); - FlashNvStorageFtwSpareSize = PcdGet32 (PcdFlashNvStorageFtwSpareSize); + FlashNvStorageFtwSpareSize = PcdGet32 (PcdFlashNvStorageFtwSpareSize); if ((FlashNvStorageVariableSize == 0) || (FlashNvStorageFtwWorkingSize == 0) || - (FlashNvStorageFtwSpareSize == 0)) { + (FlashNvStorageFtwSpareSize == 0)) + { DEBUG ((DEBUG_ERROR, "FlashNvStorage size not defined\n")); return EFI_INVALID_PARAMETER; } @@ -115,13 +116,13 @@ SetupVariableStore ( FlashRegion = FlashDevice->DeviceBaseAddress; FlashNvStorageVariableBase = FlashRegion; - FlashRegion += PcdGet32 (PcdFlashNvStorageVariableSize); + FlashRegion += PcdGet32 (PcdFlashNvStorageVariableSize); FlashNvStorageFtwWorkingBase = FlashRegion; - FlashRegion += PcdGet32 (PcdFlashNvStorageFtwWorkingSize); + FlashRegion += PcdGet32 (PcdFlashNvStorageFtwWorkingSize); FlashNvStorageFtwSpareBase = FlashRegion; - FlashRegion += PcdGet32 (PcdFlashNvStorageFtwSpareSize); + FlashRegion += PcdGet32 (PcdFlashNvStorageFtwSpareSize); if (FlashRegion > (FlashDevice->DeviceBaseAddress + FlashDevice->Size)) { DEBUG ((DEBUG_ERROR, "Insufficient flash storage size\n")); @@ -187,15 +188,16 @@ SetupVariableStore ( **/ EFI_STATUS NorFlashPlatformGetDevices ( - OUT NOR_FLASH_DESCRIPTION **NorFlashDescriptions, - OUT UINT32 *Count + OUT NOR_FLASH_DESCRIPTION **NorFlashDescriptions, + OUT UINT32 *Count ) { if (mNorFlashDeviceCount > 0) { *NorFlashDescriptions = mNorFlashDevices; - *Count = mNorFlashDeviceCount; + *Count = mNorFlashDeviceCount; return EFI_SUCCESS; } + return EFI_NOT_FOUND; } @@ -211,20 +213,20 @@ NorFlashPlatformGetDevices ( EFI_STATUS EFIAPI NorFlashPlatformLibConstructor ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE * SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - INT32 Node; - EFI_STATUS Status; - EFI_STATUS FindNodeStatus; - CONST UINT32 *Reg; - UINT32 PropSize; - UINT64 Base; - UINT64 Size; - UINTN UefiVarStoreIndex; - CONST CHAR8 *Label; - UINT32 LabelLen; + INT32 Node; + EFI_STATUS Status; + EFI_STATUS FindNodeStatus; + CONST UINT32 *Reg; + UINT32 PropSize; + UINT64 Base; + UINT64 Size; + UINTN UefiVarStoreIndex; + CONST CHAR8 *Label; + UINT32 LabelLen; if (mNorFlashDeviceCount != 0) { return EFI_SUCCESS; @@ -244,13 +246,14 @@ NorFlashPlatformLibConstructor ( &Node ); !EFI_ERROR (FindNodeStatus) && - (mNorFlashDeviceCount < MAX_FLASH_DEVICES); + (mNorFlashDeviceCount < MAX_FLASH_DEVICES); FindNodeStatus = mFdtClient->FindNextCompatibleNode ( mFdtClient, "cfi-flash", Node, &Node - )) { + )) + { Status = mFdtClient->GetNodeProperty ( mFdtClient, Node, @@ -278,15 +281,20 @@ NorFlashPlatformLibConstructor ( &PropSize ); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: GetNodeProperty () failed (Status == %r)\n", - __FUNCTION__, Status)); + DEBUG (( + DEBUG_ERROR, + "%a: GetNodeProperty () failed (Status == %r)\n", + __FUNCTION__, + Status + )); continue; } ASSERT ((PropSize % (4 * sizeof (UINT32))) == 0); while ((PropSize >= (4 * sizeof (UINT32))) && - (mNorFlashDeviceCount < MAX_FLASH_DEVICES)) { + (mNorFlashDeviceCount < MAX_FLASH_DEVICES)) + { Base = SwapBytes64 (ReadUnaligned64 ((VOID *)&Reg[0])); Size = SwapBytes64 (ReadUnaligned64 ((VOID *)&Reg[2])); Reg += 4; @@ -298,7 +306,8 @@ NorFlashPlatformLibConstructor ( // The firmware is not updatable from inside the guest anyway. // if ((PcdGet64 (PcdFvBaseAddress) + PcdGet32 (PcdFvSize) > Base) && - (Base + Size) > PcdGet64 (PcdFvBaseAddress)) { + ((Base + Size) > PcdGet64 (PcdFvBaseAddress))) + { continue; } @@ -312,8 +321,8 @@ NorFlashPlatformLibConstructor ( mNorFlashDevices[mNorFlashDeviceCount].DeviceBaseAddress = (UINTN)Base; mNorFlashDevices[mNorFlashDeviceCount].RegionBaseAddress = (UINTN)Base; - mNorFlashDevices[mNorFlashDeviceCount].Size = (UINTN)Size; - mNorFlashDevices[mNorFlashDeviceCount].BlockSize = KVMTOOL_NOR_BLOCK_SIZE; + mNorFlashDevices[mNorFlashDeviceCount].Size = (UINTN)Size; + mNorFlashDevices[mNorFlashDeviceCount].BlockSize = KVMTOOL_NOR_BLOCK_SIZE; mNorFlashDeviceCount++; } } // for @@ -326,6 +335,7 @@ NorFlashPlatformLibConstructor ( UefiVarStoreIndex = mNorFlashDeviceCount - 1; mUefiVarStoreNode = Node; } + if (mNorFlashDevices[UefiVarStoreIndex].DeviceBaseAddress != 0) { return SetupVariableStore (&mNorFlashDevices[UefiVarStoreIndex]); } diff --git a/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c b/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c index 271d7f0efb..2b39f021d0 100644 --- a/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c +++ b/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c @@ -13,9 +13,9 @@ #include -#define QEMU_NOR_BLOCK_SIZE SIZE_256KB +#define QEMU_NOR_BLOCK_SIZE SIZE_256KB -#define MAX_FLASH_BANKS 4 +#define MAX_FLASH_BANKS 4 EFI_STATUS NorFlashPlatformInitialization ( @@ -25,40 +25,59 @@ NorFlashPlatformInitialization ( return EFI_SUCCESS; } -NOR_FLASH_DESCRIPTION mNorFlashDevices[MAX_FLASH_BANKS]; +NOR_FLASH_DESCRIPTION mNorFlashDevices[MAX_FLASH_BANKS]; EFI_STATUS NorFlashPlatformGetDevices ( - OUT NOR_FLASH_DESCRIPTION **NorFlashDescriptions, - OUT UINT32 *Count + OUT NOR_FLASH_DESCRIPTION **NorFlashDescriptions, + OUT UINT32 *Count ) { - FDT_CLIENT_PROTOCOL *FdtClient; - INT32 Node; - EFI_STATUS Status; - EFI_STATUS FindNodeStatus; - CONST UINT32 *Reg; - UINT32 PropSize; - UINT32 Num; - UINT64 Base; - UINT64 Size; - - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + FDT_CLIENT_PROTOCOL *FdtClient; + INT32 Node; + EFI_STATUS Status; + EFI_STATUS FindNodeStatus; + CONST UINT32 *Reg; + UINT32 PropSize; + UINT32 Num; + UINT64 Base; + UINT64 Size; + + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); Num = 0; - for (FindNodeStatus = FdtClient->FindCompatibleNode (FdtClient, - "cfi-flash", &Node); + for (FindNodeStatus = FdtClient->FindCompatibleNode ( + FdtClient, + "cfi-flash", + &Node + ); !EFI_ERROR (FindNodeStatus) && Num < MAX_FLASH_BANKS; - FindNodeStatus = FdtClient->FindNextCompatibleNode (FdtClient, - "cfi-flash", Node, &Node)) { - - Status = FdtClient->GetNodeProperty (FdtClient, Node, "reg", - (CONST VOID **)&Reg, &PropSize); + FindNodeStatus = FdtClient->FindNextCompatibleNode ( + FdtClient, + "cfi-flash", + Node, + &Node + )) + { + Status = FdtClient->GetNodeProperty ( + FdtClient, + Node, + "reg", + (CONST VOID **)&Reg, + &PropSize + ); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: GetNodeProperty () failed (Status == %r)\n", - __FUNCTION__, Status)); + DEBUG (( + DEBUG_ERROR, + "%a: GetNodeProperty () failed (Status == %r)\n", + __FUNCTION__, + Status + )); continue; } @@ -76,7 +95,8 @@ NorFlashPlatformGetDevices ( // The firmware is not updatable from inside the guest anyway. // if ((PcdGet64 (PcdFvBaseAddress) + PcdGet32 (PcdFvSize) > Base) && - (Base + Size) > PcdGet64 (PcdFvBaseAddress)) { + ((Base + Size) > PcdGet64 (PcdFvBaseAddress))) + { continue; } @@ -97,15 +117,20 @@ NorFlashPlatformGetDevices ( // code, which is not intended to be guest updatable, and is usually backed // in a readonly manner by QEMU anyway. // - Status = FdtClient->SetNodeProperty (FdtClient, Node, "status", - "disabled", sizeof ("disabled")); + Status = FdtClient->SetNodeProperty ( + FdtClient, + Node, + "status", + "disabled", + sizeof ("disabled") + ); if (EFI_ERROR (Status)) { DEBUG ((DEBUG_WARN, "Failed to set NOR flash status to 'disabled'\n")); } } *NorFlashDescriptions = mNorFlashDevices; - *Count = Num; + *Count = Num; return EFI_SUCCESS; } diff --git a/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBm.c b/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBm.c index 02d6c87050..3ad1ecd9d2 100644 --- a/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBm.c +++ b/ArmVirtPkg/Library/PlatformBootManagerLib/PlatformBm.c @@ -32,24 +32,23 @@ #include "PlatformBm.h" -#define DP_NODE_LEN(Type) { (UINT8)sizeof (Type), (UINT8)(sizeof (Type) >> 8) } - +#define DP_NODE_LEN(Type) { (UINT8)sizeof (Type), (UINT8)(sizeof (Type) >> 8) } #pragma pack (1) typedef struct { - VENDOR_DEVICE_PATH SerialDxe; - UART_DEVICE_PATH Uart; - VENDOR_DEFINED_DEVICE_PATH TermType; - EFI_DEVICE_PATH_PROTOCOL End; + VENDOR_DEVICE_PATH SerialDxe; + UART_DEVICE_PATH Uart; + VENDOR_DEFINED_DEVICE_PATH TermType; + EFI_DEVICE_PATH_PROTOCOL End; } PLATFORM_SERIAL_CONSOLE; #pragma pack () -STATIC PLATFORM_SERIAL_CONSOLE mSerialConsole = { +STATIC PLATFORM_SERIAL_CONSOLE mSerialConsole = { // // VENDOR_DEVICE_PATH SerialDxe // { - { HARDWARE_DEVICE_PATH, HW_VENDOR_DP, DP_NODE_LEN (VENDOR_DEVICE_PATH) }, + { HARDWARE_DEVICE_PATH, HW_VENDOR_DP, DP_NODE_LEN (VENDOR_DEVICE_PATH) }, EDKII_SERIAL_PORT_LIB_VENDOR_GUID }, @@ -57,7 +56,7 @@ STATIC PLATFORM_SERIAL_CONSOLE mSerialConsole = { // UART_DEVICE_PATH Uart // { - { MESSAGING_DEVICE_PATH, MSG_UART_DP, DP_NODE_LEN (UART_DEVICE_PATH) }, + { MESSAGING_DEVICE_PATH, MSG_UART_DP, DP_NODE_LEN (UART_DEVICE_PATH) }, 0, // Reserved FixedPcdGet64 (PcdUartDefaultBaudRate), // BaudRate FixedPcdGet8 (PcdUartDefaultDataBits), // DataBits @@ -87,15 +86,14 @@ STATIC PLATFORM_SERIAL_CONSOLE mSerialConsole = { } }; - #pragma pack (1) typedef struct { - USB_CLASS_DEVICE_PATH Keyboard; - EFI_DEVICE_PATH_PROTOCOL End; + USB_CLASS_DEVICE_PATH Keyboard; + EFI_DEVICE_PATH_PROTOCOL End; } PLATFORM_USB_KEYBOARD; #pragma pack () -STATIC PLATFORM_USB_KEYBOARD mUsbKeyboard = { +STATIC PLATFORM_USB_KEYBOARD mUsbKeyboard = { // // USB_CLASS_DEVICE_PATH Keyboard // @@ -120,7 +118,6 @@ STATIC PLATFORM_USB_KEYBOARD mUsbKeyboard = { } }; - /** Check if the handle satisfies a particular condition. @@ -134,12 +131,11 @@ STATIC PLATFORM_USB_KEYBOARD mUsbKeyboard = { **/ typedef BOOLEAN -(EFIAPI *FILTER_FUNCTION) ( +(EFIAPI *FILTER_FUNCTION)( IN EFI_HANDLE Handle, IN CONST CHAR16 *ReportText ); - /** Process a handle. @@ -149,7 +145,7 @@ BOOLEAN **/ typedef VOID -(EFIAPI *CALLBACK_FUNCTION) ( +(EFIAPI *CALLBACK_FUNCTION)( IN EFI_HANDLE Handle, IN CONST CHAR16 *ReportText ); @@ -170,31 +166,41 @@ VOID STATIC VOID FilterAndProcess ( - IN EFI_GUID *ProtocolGuid, - IN FILTER_FUNCTION Filter OPTIONAL, - IN CALLBACK_FUNCTION Process + IN EFI_GUID *ProtocolGuid, + IN FILTER_FUNCTION Filter OPTIONAL, + IN CALLBACK_FUNCTION Process ) { - EFI_STATUS Status; - EFI_HANDLE *Handles; - UINTN NoHandles; - UINTN Idx; - - Status = gBS->LocateHandleBuffer (ByProtocol, ProtocolGuid, - NULL /* SearchKey */, &NoHandles, &Handles); + EFI_STATUS Status; + EFI_HANDLE *Handles; + UINTN NoHandles; + UINTN Idx; + + Status = gBS->LocateHandleBuffer ( + ByProtocol, + ProtocolGuid, + NULL /* SearchKey */, + &NoHandles, + &Handles + ); if (EFI_ERROR (Status)) { // // This is not an error, just an informative condition. // - DEBUG ((DEBUG_VERBOSE, "%a: %g: %r\n", __FUNCTION__, ProtocolGuid, - Status)); + DEBUG (( + DEBUG_VERBOSE, + "%a: %g: %r\n", + __FUNCTION__, + ProtocolGuid, + Status + )); return; } ASSERT (NoHandles > 0); for (Idx = 0; Idx < NoHandles; ++Idx) { - CHAR16 *DevicePathText; - STATIC CHAR16 Fallback[] = L""; + CHAR16 *DevicePathText; + STATIC CHAR16 Fallback[] = L""; // // The ConvertDevicePathToText() function handles NULL input transparently. @@ -208,7 +214,7 @@ FilterAndProcess ( DevicePathText = Fallback; } - if (Filter == NULL || Filter (Handles[Idx], DevicePathText)) { + if ((Filter == NULL) || Filter (Handles[Idx], DevicePathText)) { Process (Handles[Idx], DevicePathText); } @@ -216,10 +222,10 @@ FilterAndProcess ( FreePool (DevicePathText); } } + gBS->FreePool (Handles); } - /** This FILTER_FUNCTION checks if a handle corresponds to a PCI display device. **/ @@ -227,16 +233,19 @@ STATIC BOOLEAN EFIAPI IsPciDisplay ( - IN EFI_HANDLE Handle, - IN CONST CHAR16 *ReportText + IN EFI_HANDLE Handle, + IN CONST CHAR16 *ReportText ) { - EFI_STATUS Status; - EFI_PCI_IO_PROTOCOL *PciIo; - PCI_TYPE00 Pci; + EFI_STATUS Status; + EFI_PCI_IO_PROTOCOL *PciIo; + PCI_TYPE00 Pci; - Status = gBS->HandleProtocol (Handle, &gEfiPciIoProtocolGuid, - (VOID**)&PciIo); + Status = gBS->HandleProtocol ( + Handle, + &gEfiPciIoProtocolGuid, + (VOID **)&PciIo + ); if (EFI_ERROR (Status)) { // // This is not an error worth reporting. @@ -244,8 +253,13 @@ IsPciDisplay ( return FALSE; } - Status = PciIo->Pci.Read (PciIo, EfiPciIoWidthUint32, 0 /* Offset */, - sizeof Pci / sizeof (UINT32), &Pci); + Status = PciIo->Pci.Read ( + PciIo, + EfiPciIoWidthUint32, + 0 /* Offset */, + sizeof Pci / sizeof (UINT32), + &Pci + ); if (EFI_ERROR (Status)) { DEBUG ((DEBUG_ERROR, "%a: %s: %r\n", __FUNCTION__, ReportText, Status)); return FALSE; @@ -254,7 +268,6 @@ IsPciDisplay ( return IS_PCI_DISPLAY (&Pci); } - /** This FILTER_FUNCTION checks if a handle corresponds to a Virtio RNG device at the VIRTIO_DEVICE_PROTOCOL level. @@ -263,23 +276,26 @@ STATIC BOOLEAN EFIAPI IsVirtioRng ( - IN EFI_HANDLE Handle, - IN CONST CHAR16 *ReportText + IN EFI_HANDLE Handle, + IN CONST CHAR16 *ReportText ) { - EFI_STATUS Status; - VIRTIO_DEVICE_PROTOCOL *VirtIo; + EFI_STATUS Status; + VIRTIO_DEVICE_PROTOCOL *VirtIo; - Status = gBS->HandleProtocol (Handle, &gVirtioDeviceProtocolGuid, - (VOID**)&VirtIo); + Status = gBS->HandleProtocol ( + Handle, + &gVirtioDeviceProtocolGuid, + (VOID **)&VirtIo + ); if (EFI_ERROR (Status)) { return FALSE; } + return (BOOLEAN)(VirtIo->SubSystemDeviceId == VIRTIO_SUBSYSTEM_ENTROPY_SOURCE); } - /** This FILTER_FUNCTION checks if a handle corresponds to a Virtio RNG device at the EFI_PCI_IO_PROTOCOL level. @@ -288,20 +304,23 @@ STATIC BOOLEAN EFIAPI IsVirtioPciRng ( - IN EFI_HANDLE Handle, - IN CONST CHAR16 *ReportText + IN EFI_HANDLE Handle, + IN CONST CHAR16 *ReportText ) { - EFI_STATUS Status; - EFI_PCI_IO_PROTOCOL *PciIo; - UINT16 VendorId; - UINT16 DeviceId; - UINT8 RevisionId; - BOOLEAN Virtio10; - UINT16 SubsystemId; - - Status = gBS->HandleProtocol (Handle, &gEfiPciIoProtocolGuid, - (VOID**)&PciIo); + EFI_STATUS Status; + EFI_PCI_IO_PROTOCOL *PciIo; + UINT16 VendorId; + UINT16 DeviceId; + UINT8 RevisionId; + BOOLEAN Virtio10; + UINT16 SubsystemId; + + Status = gBS->HandleProtocol ( + Handle, + &gEfiPciIoProtocolGuid, + (VOID **)&PciIo + ); if (EFI_ERROR (Status)) { return FALSE; } @@ -309,11 +328,17 @@ IsVirtioPciRng ( // // Read and check VendorId. // - Status = PciIo->Pci.Read (PciIo, EfiPciIoWidthUint16, PCI_VENDOR_ID_OFFSET, - 1, &VendorId); + Status = PciIo->Pci.Read ( + PciIo, + EfiPciIoWidthUint16, + PCI_VENDOR_ID_OFFSET, + 1, + &VendorId + ); if (EFI_ERROR (Status)) { goto PciError; } + if (VendorId != VIRTIO_VENDOR_ID) { return FALSE; } @@ -321,13 +346,24 @@ IsVirtioPciRng ( // // Read DeviceId and RevisionId. // - Status = PciIo->Pci.Read (PciIo, EfiPciIoWidthUint16, PCI_DEVICE_ID_OFFSET, - 1, &DeviceId); + Status = PciIo->Pci.Read ( + PciIo, + EfiPciIoWidthUint16, + PCI_DEVICE_ID_OFFSET, + 1, + &DeviceId + ); if (EFI_ERROR (Status)) { goto PciError; } - Status = PciIo->Pci.Read (PciIo, EfiPciIoWidthUint8, PCI_REVISION_ID_OFFSET, - 1, &RevisionId); + + Status = PciIo->Pci.Read ( + PciIo, + EfiPciIoWidthUint8, + PCI_REVISION_ID_OFFSET, + 1, + &RevisionId + ); if (EFI_ERROR (Status)) { goto PciError; } @@ -339,10 +375,11 @@ IsVirtioPciRng ( // SubsystemId will only play a sanity-check role. Otherwise, DeviceId can // only be sanity-checked, and SubsystemId will decide. // - if (DeviceId == 0x1040 + VIRTIO_SUBSYSTEM_ENTROPY_SOURCE && - RevisionId >= 0x01) { + if ((DeviceId == 0x1040 + VIRTIO_SUBSYSTEM_ENTROPY_SOURCE) && + (RevisionId >= 0x01)) + { Virtio10 = TRUE; - } else if (DeviceId >= 0x1000 && DeviceId <= 0x103F && RevisionId == 0x00) { + } else if ((DeviceId >= 0x1000) && (DeviceId <= 0x103F) && (RevisionId == 0x00)) { Virtio10 = FALSE; } else { return FALSE; @@ -351,17 +388,25 @@ IsVirtioPciRng ( // // Read and check SubsystemId as dictated by Virtio10. // - Status = PciIo->Pci.Read (PciIo, EfiPciIoWidthUint16, - PCI_SUBSYSTEM_ID_OFFSET, 1, &SubsystemId); + Status = PciIo->Pci.Read ( + PciIo, + EfiPciIoWidthUint16, + PCI_SUBSYSTEM_ID_OFFSET, + 1, + &SubsystemId + ); if (EFI_ERROR (Status)) { goto PciError; } - if (Virtio10 && SubsystemId >= 0x40) { + + if (Virtio10 && (SubsystemId >= 0x40)) { return TRUE; } - if (!Virtio10 && SubsystemId == VIRTIO_SUBSYSTEM_ENTROPY_SOURCE) { + + if (!Virtio10 && (SubsystemId == VIRTIO_SUBSYSTEM_ENTROPY_SOURCE)) { return TRUE; } + return FALSE; PciError: @@ -369,7 +414,6 @@ PciError: return FALSE; } - /** This CALLBACK_FUNCTION attempts to connect a handle non-recursively, asking the matching driver to produce all first-level child handles. @@ -378,11 +422,11 @@ STATIC VOID EFIAPI Connect ( - IN EFI_HANDLE Handle, - IN CONST CHAR16 *ReportText + IN EFI_HANDLE Handle, + IN CONST CHAR16 *ReportText ) { - EFI_STATUS Status; + EFI_STATUS Status; Status = gBS->ConnectController ( Handle, // ControllerHandle @@ -390,11 +434,15 @@ Connect ( NULL, // RemainingDevicePath -- produce all children FALSE // Recursive ); - DEBUG ((EFI_ERROR (Status) ? DEBUG_ERROR : DEBUG_VERBOSE, "%a: %s: %r\n", - __FUNCTION__, ReportText, Status)); + DEBUG (( + EFI_ERROR (Status) ? DEBUG_ERROR : DEBUG_VERBOSE, + "%a: %s: %r\n", + __FUNCTION__, + ReportText, + Status + )); } - /** This CALLBACK_FUNCTION retrieves the EFI_DEVICE_PATH_PROTOCOL from the handle, and adds it to ConOut and ErrOut. @@ -403,59 +451,78 @@ STATIC VOID EFIAPI AddOutput ( - IN EFI_HANDLE Handle, - IN CONST CHAR16 *ReportText + IN EFI_HANDLE Handle, + IN CONST CHAR16 *ReportText ) { - EFI_STATUS Status; - EFI_DEVICE_PATH_PROTOCOL *DevicePath; + EFI_STATUS Status; + EFI_DEVICE_PATH_PROTOCOL *DevicePath; DevicePath = DevicePathFromHandle (Handle); if (DevicePath == NULL) { - DEBUG ((DEBUG_ERROR, "%a: %s: handle %p: device path not found\n", - __FUNCTION__, ReportText, Handle)); + DEBUG (( + DEBUG_ERROR, + "%a: %s: handle %p: device path not found\n", + __FUNCTION__, + ReportText, + Handle + )); return; } Status = EfiBootManagerUpdateConsoleVariable (ConOut, DevicePath, NULL); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: %s: adding to ConOut: %r\n", __FUNCTION__, - ReportText, Status)); + DEBUG (( + DEBUG_ERROR, + "%a: %s: adding to ConOut: %r\n", + __FUNCTION__, + ReportText, + Status + )); return; } Status = EfiBootManagerUpdateConsoleVariable (ErrOut, DevicePath, NULL); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: %s: adding to ErrOut: %r\n", __FUNCTION__, - ReportText, Status)); + DEBUG (( + DEBUG_ERROR, + "%a: %s: adding to ErrOut: %r\n", + __FUNCTION__, + ReportText, + Status + )); return; } - DEBUG ((DEBUG_VERBOSE, "%a: %s: added to ConOut and ErrOut\n", __FUNCTION__, - ReportText)); + DEBUG (( + DEBUG_VERBOSE, + "%a: %s: added to ConOut and ErrOut\n", + __FUNCTION__, + ReportText + )); } STATIC VOID PlatformRegisterFvBootOption ( - EFI_GUID *FileGuid, - CHAR16 *Description, - UINT32 Attributes + EFI_GUID *FileGuid, + CHAR16 *Description, + UINT32 Attributes ) { - EFI_STATUS Status; - INTN OptionIndex; - EFI_BOOT_MANAGER_LOAD_OPTION NewOption; - EFI_BOOT_MANAGER_LOAD_OPTION *BootOptions; - UINTN BootOptionCount; - MEDIA_FW_VOL_FILEPATH_DEVICE_PATH FileNode; - EFI_LOADED_IMAGE_PROTOCOL *LoadedImage; - EFI_DEVICE_PATH_PROTOCOL *DevicePath; + EFI_STATUS Status; + INTN OptionIndex; + EFI_BOOT_MANAGER_LOAD_OPTION NewOption; + EFI_BOOT_MANAGER_LOAD_OPTION *BootOptions; + UINTN BootOptionCount; + MEDIA_FW_VOL_FILEPATH_DEVICE_PATH FileNode; + EFI_LOADED_IMAGE_PROTOCOL *LoadedImage; + EFI_DEVICE_PATH_PROTOCOL *DevicePath; Status = gBS->HandleProtocol ( gImageHandle, &gEfiLoadedImageProtocolGuid, - (VOID **) &LoadedImage + (VOID **)&LoadedImage ); ASSERT_EFI_ERROR (Status); @@ -464,7 +531,7 @@ PlatformRegisterFvBootOption ( ASSERT (DevicePath != NULL); DevicePath = AppendDevicePathNode ( DevicePath, - (EFI_DEVICE_PATH_PROTOCOL *) &FileNode + (EFI_DEVICE_PATH_PROTOCOL *)&FileNode ); ASSERT (DevicePath != NULL); @@ -482,22 +549,25 @@ PlatformRegisterFvBootOption ( FreePool (DevicePath); BootOptions = EfiBootManagerGetLoadOptions ( - &BootOptionCount, LoadOptionTypeBoot + &BootOptionCount, + LoadOptionTypeBoot ); OptionIndex = EfiBootManagerFindLoadOption ( - &NewOption, BootOptions, BootOptionCount + &NewOption, + BootOptions, + BootOptionCount ); if (OptionIndex == -1) { Status = EfiBootManagerAddLoadOptionVariable (&NewOption, MAX_UINTN); ASSERT_EFI_ERROR (Status); } + EfiBootManagerFreeLoadOption (&NewOption); EfiBootManagerFreeLoadOptions (BootOptions, BootOptionCount); } - /** Remove all MemoryMapped(...)/FvFile(...) and Fv(...)/FvFile(...) boot options whose device paths do not resolve exactly to an FvFile in the system. @@ -518,27 +588,30 @@ RemoveStaleFvFileOptions ( VOID ) { - EFI_BOOT_MANAGER_LOAD_OPTION *BootOptions; - UINTN BootOptionCount; - UINTN Index; + EFI_BOOT_MANAGER_LOAD_OPTION *BootOptions; + UINTN BootOptionCount; + UINTN Index; - BootOptions = EfiBootManagerGetLoadOptions (&BootOptionCount, - LoadOptionTypeBoot); + BootOptions = EfiBootManagerGetLoadOptions ( + &BootOptionCount, + LoadOptionTypeBoot + ); for (Index = 0; Index < BootOptionCount; ++Index) { - EFI_DEVICE_PATH_PROTOCOL *Node1, *Node2, *SearchNode; - EFI_STATUS Status; - EFI_HANDLE FvHandle; + EFI_DEVICE_PATH_PROTOCOL *Node1, *Node2, *SearchNode; + EFI_STATUS Status; + EFI_HANDLE FvHandle; // // If the device path starts with neither MemoryMapped(...) nor Fv(...), // then keep the boot option. // Node1 = BootOptions[Index].FilePath; - if (!(DevicePathType (Node1) == HARDWARE_DEVICE_PATH && - DevicePathSubType (Node1) == HW_MEMMAP_DP) && - !(DevicePathType (Node1) == MEDIA_DEVICE_PATH && - DevicePathSubType (Node1) == MEDIA_PIWG_FW_VOL_DP)) { + if (!((DevicePathType (Node1) == HARDWARE_DEVICE_PATH) && + (DevicePathSubType (Node1) == HW_MEMMAP_DP)) && + !((DevicePathType (Node1) == MEDIA_DEVICE_PATH) && + (DevicePathSubType (Node1) == MEDIA_PIWG_FW_VOL_DP))) + { continue; } @@ -547,8 +620,9 @@ RemoveStaleFvFileOptions ( // option. // Node2 = NextDevicePathNode (Node1); - if (DevicePathType (Node2) != MEDIA_DEVICE_PATH || - DevicePathSubType (Node2) != MEDIA_PIWG_FW_FILE_DP) { + if ((DevicePathType (Node2) != MEDIA_DEVICE_PATH) || + (DevicePathSubType (Node2) != MEDIA_PIWG_FW_FILE_DP)) + { continue; } @@ -559,23 +633,29 @@ RemoveStaleFvFileOptions ( // boot option. // SearchNode = Node1; - Status = gBS->LocateDevicePath (&gEfiFirmwareVolume2ProtocolGuid, - &SearchNode, &FvHandle); + Status = gBS->LocateDevicePath ( + &gEfiFirmwareVolume2ProtocolGuid, + &SearchNode, + &FvHandle + ); if (!EFI_ERROR (Status)) { // // The firmware volume was found; now let's see if it contains the FvFile // identified by GUID. // - EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol; - MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvFileNode; - UINTN BufferSize; - EFI_FV_FILETYPE FoundType; - EFI_FV_FILE_ATTRIBUTES FileAttributes; - UINT32 AuthenticationStatus; - - Status = gBS->HandleProtocol (FvHandle, &gEfiFirmwareVolume2ProtocolGuid, - (VOID **)&FvProtocol); + EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol; + MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *FvFileNode; + UINTN BufferSize; + EFI_FV_FILETYPE FoundType; + EFI_FV_FILE_ATTRIBUTES FileAttributes; + UINT32 AuthenticationStatus; + + Status = gBS->HandleProtocol ( + FvHandle, + &gEfiFirmwareVolume2ProtocolGuid, + (VOID **)&FvProtocol + ); ASSERT_EFI_ERROR (Status); FvFileNode = (MEDIA_FW_VOL_FILEPATH_DEVICE_PATH *)Node2; @@ -604,48 +684,53 @@ RemoveStaleFvFileOptions ( // Delete the boot option. // Status = EfiBootManagerDeleteLoadOptionVariable ( - BootOptions[Index].OptionNumber, LoadOptionTypeBoot); + BootOptions[Index].OptionNumber, + LoadOptionTypeBoot + ); DEBUG_CODE_BEGIN (); - CHAR16 *DevicePathString; - - DevicePathString = ConvertDevicePathToText(BootOptions[Index].FilePath, - FALSE, FALSE); - DEBUG (( - EFI_ERROR (Status) ? DEBUG_WARN : DEBUG_VERBOSE, - "%a: removing stale Boot#%04x %s: %r\n", - __FUNCTION__, - (UINT32)BootOptions[Index].OptionNumber, - DevicePathString == NULL ? L"" : DevicePathString, - Status - )); - if (DevicePathString != NULL) { - FreePool (DevicePathString); - } + CHAR16 *DevicePathString; + + DevicePathString = ConvertDevicePathToText ( + BootOptions[Index].FilePath, + FALSE, + FALSE + ); + DEBUG (( + EFI_ERROR (Status) ? DEBUG_WARN : DEBUG_VERBOSE, + "%a: removing stale Boot#%04x %s: %r\n", + __FUNCTION__, + (UINT32)BootOptions[Index].OptionNumber, + DevicePathString == NULL ? L"" : DevicePathString, + Status + )); + if (DevicePathString != NULL) { + FreePool (DevicePathString); + } + DEBUG_CODE_END (); } EfiBootManagerFreeLoadOptions (BootOptions, BootOptionCount); } - STATIC VOID PlatformRegisterOptionsAndKeys ( VOID ) { - EFI_STATUS Status; - EFI_INPUT_KEY Enter; - EFI_INPUT_KEY F2; - EFI_INPUT_KEY Esc; - EFI_BOOT_MANAGER_LOAD_OPTION BootOption; + EFI_STATUS Status; + EFI_INPUT_KEY Enter; + EFI_INPUT_KEY F2; + EFI_INPUT_KEY Esc; + EFI_BOOT_MANAGER_LOAD_OPTION BootOption; // // Register ENTER as CONTINUE key // Enter.ScanCode = SCAN_NULL; Enter.UnicodeChar = CHAR_CARRIAGE_RETURN; - Status = EfiBootManagerRegisterContinueKeyOption (0, &Enter, NULL); + Status = EfiBootManagerRegisterContinueKeyOption (0, &Enter, NULL); ASSERT_EFI_ERROR (Status); // @@ -655,22 +740,30 @@ PlatformRegisterOptionsAndKeys ( F2.UnicodeChar = CHAR_NULL; Esc.ScanCode = SCAN_ESC; Esc.UnicodeChar = CHAR_NULL; - Status = EfiBootManagerGetBootManagerMenu (&BootOption); + Status = EfiBootManagerGetBootManagerMenu (&BootOption); ASSERT_EFI_ERROR (Status); Status = EfiBootManagerAddKeyOptionVariable ( - NULL, (UINT16) BootOption.OptionNumber, 0, &F2, NULL + NULL, + (UINT16)BootOption.OptionNumber, + 0, + &F2, + NULL ); ASSERT (Status == EFI_SUCCESS || Status == EFI_ALREADY_STARTED); Status = EfiBootManagerAddKeyOptionVariable ( - NULL, (UINT16) BootOption.OptionNumber, 0, &Esc, NULL + NULL, + (UINT16)BootOption.OptionNumber, + 0, + &Esc, + NULL ); ASSERT (Status == EFI_SUCCESS || Status == EFI_ALREADY_STARTED); } - // // BDS Platform Functions // + /** Do the platform init, can be customized by OEM/IBV Possible things that can be done in PlatformBootManagerBeforeConsole: @@ -688,9 +781,9 @@ PlatformBootManagerBeforeConsole ( VOID ) { - UINT16 FrontPageTimeout; - RETURN_STATUS PcdStatus; - EFI_STATUS Status; + UINT16 FrontPageTimeout; + RETURN_STATUS PcdStatus; + EFI_STATUS Status; // // Signal EndOfDxe PI Event @@ -735,26 +828,40 @@ PlatformBootManagerBeforeConsole ( // // Add the hardcoded short-form USB keyboard device path to ConIn. // - EfiBootManagerUpdateConsoleVariable (ConIn, - (EFI_DEVICE_PATH_PROTOCOL *)&mUsbKeyboard, NULL); + EfiBootManagerUpdateConsoleVariable ( + ConIn, + (EFI_DEVICE_PATH_PROTOCOL *)&mUsbKeyboard, + NULL + ); // // Add the hardcoded serial console device path to ConIn, ConOut, ErrOut. // - CopyGuid (&mSerialConsole.TermType.Guid, - PcdGetPtr (PcdTerminalTypeGuidBuffer)); - EfiBootManagerUpdateConsoleVariable (ConIn, - (EFI_DEVICE_PATH_PROTOCOL *)&mSerialConsole, NULL); - EfiBootManagerUpdateConsoleVariable (ConOut, - (EFI_DEVICE_PATH_PROTOCOL *)&mSerialConsole, NULL); - EfiBootManagerUpdateConsoleVariable (ErrOut, - (EFI_DEVICE_PATH_PROTOCOL *)&mSerialConsole, NULL); + CopyGuid ( + &mSerialConsole.TermType.Guid, + PcdGetPtr (PcdTerminalTypeGuidBuffer) + ); + EfiBootManagerUpdateConsoleVariable ( + ConIn, + (EFI_DEVICE_PATH_PROTOCOL *)&mSerialConsole, + NULL + ); + EfiBootManagerUpdateConsoleVariable ( + ConOut, + (EFI_DEVICE_PATH_PROTOCOL *)&mSerialConsole, + NULL + ); + EfiBootManagerUpdateConsoleVariable ( + ErrOut, + (EFI_DEVICE_PATH_PROTOCOL *)&mSerialConsole, + NULL + ); // // Set the front page timeout from the QEMU configuration. // FrontPageTimeout = GetFrontPageTimeoutFromQemu (); - PcdStatus = PcdSet16S (PcdPlatformBootTimeOut, FrontPageTimeout); + PcdStatus = PcdSet16S (PcdPlatformBootTimeOut, FrontPageTimeout); ASSERT_RETURN_ERROR (PcdStatus); // // Reflect the PCD in the standard Timeout variable. @@ -812,7 +919,7 @@ PlatformBootManagerAfterConsole ( VOID ) { - RETURN_STATUS Status; + RETURN_STATUS Status; // // Show the splash screen. @@ -848,7 +955,9 @@ PlatformBootManagerAfterConsole ( // Register UEFI Shell // PlatformRegisterFvBootOption ( - &gUefiShellFileGuid, L"EFI Internal Shell", LOAD_OPTION_ACTIVE + &gUefiShellFileGuid, + L"EFI Internal Shell", + LOAD_OPTION_ACTIVE ); RemoveStaleFvFileOptions (); @@ -866,12 +975,12 @@ PlatformBootManagerAfterConsole ( VOID EFIAPI PlatformBootManagerWaitCallback ( - UINT16 TimeoutRemain + UINT16 TimeoutRemain ) { - EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION Black; - EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION White; - UINT16 TimeoutInitial; + EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION Black; + EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION White; + UINT16 TimeoutInitial; TimeoutInitial = PcdGet16 (PcdPlatformBootTimeOut); @@ -909,10 +1018,10 @@ PlatformBootManagerUnableToBoot ( VOID ) { - EFI_STATUS Status; - EFI_INPUT_KEY Key; - EFI_BOOT_MANAGER_LOAD_OPTION BootManagerMenu; - UINTN Index; + EFI_STATUS Status; + EFI_INPUT_KEY Key; + EFI_BOOT_MANAGER_LOAD_OPTION BootManagerMenu; + UINTN Index; // // BootManagerMenu doesn't contain the correct information when return status @@ -922,6 +1031,7 @@ PlatformBootManagerUnableToBoot ( if (EFI_ERROR (Status)) { return; } + // // Normally BdsDxe does not print anything to the system console, but this is // a last resort -- the end-user will likely not see any DEBUG messages @@ -951,7 +1061,7 @@ PlatformBootManagerUnableToBoot ( } } - for (;;) { + for ( ; ;) { EfiBootManagerBoot (&BootManagerMenu); } } diff --git a/ArmVirtPkg/Library/PlatformBootManagerLib/QemuKernel.c b/ArmVirtPkg/Library/PlatformBootManagerLib/QemuKernel.c index e9c110a0ed..c66b7c7b21 100644 --- a/ArmVirtPkg/Library/PlatformBootManagerLib/QemuKernel.c +++ b/ArmVirtPkg/Library/PlatformBootManagerLib/QemuKernel.c @@ -40,8 +40,8 @@ TryRunningQemuKernel ( VOID ) { - EFI_STATUS Status; - EFI_HANDLE KernelImageHandle; + EFI_STATUS Status; + EFI_HANDLE KernelImageHandle; Status = QemuLoadKernelImage (&KernelImageHandle); if (EFI_ERROR (Status)) { @@ -51,18 +51,24 @@ TryRunningQemuKernel ( // // Signal the EFI_EVENT_GROUP_READY_TO_BOOT event. // - EfiSignalEventReadyToBoot(); + EfiSignalEventReadyToBoot (); - REPORT_STATUS_CODE (EFI_PROGRESS_CODE, - (EFI_SOFTWARE_DXE_BS_DRIVER | EFI_SW_DXE_BS_PC_READY_TO_BOOT_EVENT)); + REPORT_STATUS_CODE ( + EFI_PROGRESS_CODE, + (EFI_SOFTWARE_DXE_BS_DRIVER | EFI_SW_DXE_BS_PC_READY_TO_BOOT_EVENT) + ); // // Start the image. // Status = QemuStartKernelImage (&KernelImageHandle); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: QemuStartKernelImage(): %r\n", __FUNCTION__, - Status)); + DEBUG (( + DEBUG_ERROR, + "%a: QemuStartKernelImage(): %r\n", + __FUNCTION__, + Status + )); } QemuUnloadKernelImage (KernelImageHandle); diff --git a/ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.c b/ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.c index 83f346157f..bb71fee649 100644 --- a/ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.c +++ b/ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.c @@ -19,13 +19,13 @@ #include #include -STATIC CONST EFI_PEI_PPI_DESCRIPTOR mTpm2DiscoveredPpi = { +STATIC CONST EFI_PEI_PPI_DESCRIPTOR mTpm2DiscoveredPpi = { EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST, &gOvmfTpmDiscoveredPpiGuid, NULL }; -STATIC CONST EFI_PEI_PPI_DESCRIPTOR mTpm2InitializationDonePpi = { +STATIC CONST EFI_PEI_PPI_DESCRIPTOR mTpm2InitializationDonePpi = { EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST, &gPeiTpmInitializationDonePpiGuid, NULL @@ -37,33 +37,33 @@ PlatformPeim ( VOID ) { - VOID *Base; - VOID *NewBase; - UINTN FdtSize; - UINTN FdtPages; - UINT64 *FdtHobData; - UINT64 *UartHobData; - INT32 Node, Prev; - INT32 Parent, Depth; - CONST CHAR8 *Compatible; - CONST CHAR8 *CompItem; - CONST CHAR8 *NodeStatus; - INT32 Len; - INT32 RangesLen; - INT32 StatusLen; - CONST UINT64 *RegProp; - CONST UINT32 *RangesProp; - UINT64 UartBase; - UINT64 TpmBase; - EFI_STATUS Status; - - Base = (VOID*)(UINTN)PcdGet64 (PcdDeviceTreeInitialBaseAddress); + VOID *Base; + VOID *NewBase; + UINTN FdtSize; + UINTN FdtPages; + UINT64 *FdtHobData; + UINT64 *UartHobData; + INT32 Node, Prev; + INT32 Parent, Depth; + CONST CHAR8 *Compatible; + CONST CHAR8 *CompItem; + CONST CHAR8 *NodeStatus; + INT32 Len; + INT32 RangesLen; + INT32 StatusLen; + CONST UINT64 *RegProp; + CONST UINT32 *RangesProp; + UINT64 UartBase; + UINT64 TpmBase; + EFI_STATUS Status; + + Base = (VOID *)(UINTN)PcdGet64 (PcdDeviceTreeInitialBaseAddress); ASSERT (Base != NULL); ASSERT (fdt_check_header (Base) == 0); - FdtSize = fdt_totalsize (Base) + PcdGet32 (PcdDeviceTreeAllocationPadding); + FdtSize = fdt_totalsize (Base) + PcdGet32 (PcdDeviceTreeAllocationPadding); FdtPages = EFI_SIZE_TO_PAGES (FdtSize); - NewBase = AllocatePages (FdtPages); + NewBase = AllocatePages (FdtPages); ASSERT (NewBase != NULL); fdt_open_into (Base, NewBase, EFI_PAGES_TO_SIZE (FdtPages)); @@ -82,7 +82,7 @@ PlatformPeim ( // Parent = 0; - for (Prev = Depth = 0;; Prev = Node) { + for (Prev = Depth = 0; ; Prev = Node) { Node = fdt_next_node (Base, Prev, &Depth); if (Node < 0) { break; @@ -98,11 +98,11 @@ PlatformPeim ( // Iterate over the NULL-separated items in the compatible string // for (CompItem = Compatible; CompItem != NULL && CompItem < Compatible + Len; - CompItem += 1 + AsciiStrLen (CompItem)) { - + CompItem += 1 + AsciiStrLen (CompItem)) + { if (AsciiStrCmp (CompItem, "arm,pl011") == 0) { NodeStatus = fdt_getprop (Base, Node, "status", &StatusLen); - if (NodeStatus != NULL && AsciiStrCmp (NodeStatus, "okay") != 0) { + if ((NodeStatus != NULL) && (AsciiStrCmp (NodeStatus, "okay") != 0)) { continue; } @@ -116,8 +116,8 @@ PlatformPeim ( *UartHobData = UartBase; break; } else if (FeaturePcdGet (PcdTpm2SupportEnabled) && - AsciiStrCmp (CompItem, "tcg,tpm-tis-mmio") == 0) { - + (AsciiStrCmp (CompItem, "tcg,tpm-tis-mmio") == 0)) + { RegProp = fdt_getprop (Base, Node, "reg", &Len); ASSERT (Len == 8 || Len == 16); if (Len == 8) { @@ -145,9 +145,12 @@ PlatformPeim ( // assume a single translated range with 2 cells for the parent base // if (RangesLen != Len + 2 * sizeof (UINT32)) { - DEBUG ((DEBUG_WARN, + DEBUG (( + DEBUG_WARN, "%a: 'ranges' property has unexpected size %d\n", - __FUNCTION__, RangesLen)); + __FUNCTION__, + RangesLen + )); break; } @@ -161,9 +164,10 @@ PlatformPeim ( // advance RangesProp to the parent bus address // RangesProp = (UINT32 *)((UINT8 *)RangesProp + Len / 2); - TpmBase += fdt64_to_cpu (ReadUnaligned64 ((UINT64 *)RangesProp)); + TpmBase += fdt64_to_cpu (ReadUnaligned64 ((UINT64 *)RangesProp)); } } + break; } } @@ -180,6 +184,7 @@ PlatformPeim ( } else { Status = PeiServicesInstallPpi (&mTpm2InitializationDonePpi); } + ASSERT_EFI_ERROR (Status); } diff --git a/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoLib.c b/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoLib.c index 7ae837b186..cf569bed99 100644 --- a/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoLib.c +++ b/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoLib.c @@ -13,7 +13,7 @@ #include // Number of Virtual Memory Map Descriptors -#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 5 +#define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 5 // // mach-virt's core peripherals such as the UART, the GIC and the RTC are @@ -21,8 +21,8 @@ // in its entirety rather than device by device. Note that it does not // cover any of the NOR flash banks or PCI resource windows. // -#define MACH_VIRT_PERIPH_BASE 0x08000000 -#define MACH_VIRT_PERIPH_SIZE SIZE_128MB +#define MACH_VIRT_PERIPH_BASE 0x08000000 +#define MACH_VIRT_PERIPH_SIZE SIZE_128MB /** Return the Virtual Memory Map of your platform @@ -39,15 +39,17 @@ **/ VOID ArmVirtGetMemoryMap ( - OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap + OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap ) { ARM_MEMORY_REGION_DESCRIPTOR *VirtualMemoryTable; ASSERT (VirtualMemoryMap != NULL); - VirtualMemoryTable = AllocatePool (sizeof (ARM_MEMORY_REGION_DESCRIPTOR) * - MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS); + VirtualMemoryTable = AllocatePool ( + sizeof (ARM_MEMORY_REGION_DESCRIPTOR) * + MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS + ); if (VirtualMemoryTable == NULL) { DEBUG ((DEBUG_ERROR, "%a: Error: Failed AllocatePool()\n", __FUNCTION__)); @@ -60,14 +62,17 @@ ArmVirtGetMemoryMap ( VirtualMemoryTable[0].Length = PcdGet64 (PcdSystemMemorySize); VirtualMemoryTable[0].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK; - DEBUG ((DEBUG_INFO, "%a: Dumping System DRAM Memory Map:\n" - "\tPhysicalBase: 0x%lX\n" - "\tVirtualBase: 0x%lX\n" - "\tLength: 0x%lX\n", - __FUNCTION__, - VirtualMemoryTable[0].PhysicalBase, - VirtualMemoryTable[0].VirtualBase, - VirtualMemoryTable[0].Length)); + DEBUG (( + DEBUG_INFO, + "%a: Dumping System DRAM Memory Map:\n" + "\tPhysicalBase: 0x%lX\n" + "\tVirtualBase: 0x%lX\n" + "\tLength: 0x%lX\n", + __FUNCTION__, + VirtualMemoryTable[0].PhysicalBase, + VirtualMemoryTable[0].VirtualBase, + VirtualMemoryTable[0].Length + )); // Memory mapped peripherals (UART, RTC, GIC, virtio-mmio, etc) VirtualMemoryTable[1].PhysicalBase = MACH_VIRT_PERIPH_BASE; diff --git a/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoPeiLibConstructor.c b/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoPeiLibConstructor.c index b32419b85c..33d3597d57 100644 --- a/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoPeiLibConstructor.c +++ b/ArmVirtPkg/Library/QemuVirtMemInfoLib/QemuVirtMemInfoPeiLibConstructor.c @@ -17,14 +17,14 @@ QemuVirtMemInfoPeiLibConstructor ( VOID ) { - VOID *DeviceTreeBase; - INT32 Node, Prev; - UINT64 NewBase, CurBase; - UINT64 NewSize, CurSize; - CONST CHAR8 *Type; - INT32 Len; - CONST UINT64 *RegProp; - RETURN_STATUS PcdStatus; + VOID *DeviceTreeBase; + INT32 Node, Prev; + UINT64 NewBase, CurBase; + UINT64 NewSize, CurSize; + CONST CHAR8 *Type; + INT32 Len; + CONST UINT64 *RegProp; + RETURN_STATUS PcdStatus; NewBase = 0; NewSize = 0; @@ -40,7 +40,7 @@ QemuVirtMemInfoPeiLibConstructor ( // // Look for the lowest memory node // - for (Prev = 0;; Prev = Node) { + for (Prev = 0; ; Prev = Node) { Node = fdt_next_node (DeviceTreeBase, Prev, NULL); if (Node < 0) { break; @@ -50,27 +50,34 @@ QemuVirtMemInfoPeiLibConstructor ( // Check for memory node // Type = fdt_getprop (DeviceTreeBase, Node, "device_type", &Len); - if (Type && AsciiStrnCmp (Type, "memory", Len) == 0) { + if (Type && (AsciiStrnCmp (Type, "memory", Len) == 0)) { // // Get the 'reg' property of this node. For now, we will assume // two 8 byte quantities for base and size, respectively. // RegProp = fdt_getprop (DeviceTreeBase, Node, "reg", &Len); - if (RegProp != 0 && Len == (2 * sizeof (UINT64))) { - + if ((RegProp != 0) && (Len == (2 * sizeof (UINT64)))) { CurBase = fdt64_to_cpu (ReadUnaligned64 (RegProp)); CurSize = fdt64_to_cpu (ReadUnaligned64 (RegProp + 1)); - DEBUG ((DEBUG_INFO, "%a: System RAM @ 0x%lx - 0x%lx\n", - __FUNCTION__, CurBase, CurBase + CurSize - 1)); + DEBUG (( + DEBUG_INFO, + "%a: System RAM @ 0x%lx - 0x%lx\n", + __FUNCTION__, + CurBase, + CurBase + CurSize - 1 + )); - if (NewBase > CurBase || NewBase == 0) { + if ((NewBase > CurBase) || (NewBase == 0)) { NewBase = CurBase; NewSize = CurSize; } } else { - DEBUG ((DEBUG_ERROR, "%a: Failed to parse FDT memory node\n", - __FUNCTION__)); + DEBUG (( + DEBUG_ERROR, + "%a: Failed to parse FDT memory node\n", + __FUNCTION__ + )); } } } @@ -94,7 +101,8 @@ QemuVirtMemInfoPeiLibConstructor ( ASSERT ( (((UINT64)PcdGet64 (PcdFdBaseAddress) + (UINT64)PcdGet32 (PcdFdSize)) <= NewBase) || - ((UINT64)PcdGet64 (PcdFdBaseAddress) >= (NewBase + NewSize))); + ((UINT64)PcdGet64 (PcdFdBaseAddress) >= (NewBase + NewSize)) + ); return RETURN_SUCCESS; } diff --git a/ArmVirtPkg/Library/XenArmGenericTimerVirtCounterLib/XenArmGenericTimerVirtCounterLib.c b/ArmVirtPkg/Library/XenArmGenericTimerVirtCounterLib/XenArmGenericTimerVirtCounterLib.c index da01870cee..9559caa93f 100644 --- a/ArmVirtPkg/Library/XenArmGenericTimerVirtCounterLib/XenArmGenericTimerVirtCounterLib.c +++ b/ArmVirtPkg/Library/XenArmGenericTimerVirtCounterLib/XenArmGenericTimerVirtCounterLib.c @@ -16,9 +16,9 @@ ArmGenericTimerEnableTimer ( VOID ) { - UINTN TimerCtrlReg; + UINTN TimerCtrlReg; - TimerCtrlReg = ArmReadCntvCtl (); + TimerCtrlReg = ArmReadCntvCtl (); TimerCtrlReg |= ARM_ARCH_TIMER_ENABLE; ArmWriteCntvCtl (TimerCtrlReg); } @@ -29,9 +29,9 @@ ArmGenericTimerReenableTimer ( VOID ) { - UINTN TimerCtrlReg; + UINTN TimerCtrlReg; - TimerCtrlReg = ArmReadCntvCtl (); + TimerCtrlReg = ArmReadCntvCtl (); TimerCtrlReg |= ARM_ARCH_TIMER_ENABLE; // @@ -50,9 +50,9 @@ ArmGenericTimerDisableTimer ( VOID ) { - UINTN TimerCtrlReg; + UINTN TimerCtrlReg; - TimerCtrlReg = ArmReadCntvCtl (); + TimerCtrlReg = ArmReadCntvCtl (); TimerCtrlReg &= ~ARM_ARCH_TIMER_ENABLE; ArmWriteCntvCtl (TimerCtrlReg); } @@ -84,11 +84,10 @@ ArmGenericTimerGetTimerVal ( return ArmReadCntvTval (); } - VOID EFIAPI ArmGenericTimerSetTimerVal ( - IN UINTN Value + IN UINTN Value ) { ArmWriteCntvTval (Value); @@ -115,7 +114,7 @@ ArmGenericTimerGetTimerCtrlReg ( VOID EFIAPI ArmGenericTimerSetTimerCtrlReg ( - UINTN Value + UINTN Value ) { ArmWriteCntvCtl (Value); @@ -133,7 +132,7 @@ ArmGenericTimerGetCompareVal ( VOID EFIAPI ArmGenericTimerSetCompareVal ( - IN UINT64 Value + IN UINT64 Value ) { ArmWriteCntvCval (Value); diff --git a/ArmVirtPkg/Library/XenVirtMemInfoLib/XenVirtMemInfoLib.c b/ArmVirtPkg/Library/XenVirtMemInfoLib/XenVirtMemInfoLib.c index aa483b6d90..ac0c75aecf 100644 --- a/ArmVirtPkg/Library/XenVirtMemInfoLib/XenVirtMemInfoLib.c +++ b/ArmVirtPkg/Library/XenVirtMemInfoLib/XenVirtMemInfoLib.c @@ -29,10 +29,10 @@ STATIC ARM_MEMORY_REGION_DESCRIPTOR mVirtualMemoryTable[2]; VOID EFIAPI ArmVirtGetMemoryMap ( - OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap + OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap ) { - EFI_PHYSICAL_ADDRESS TopOfAddressSpace; + EFI_PHYSICAL_ADDRESS TopOfAddressSpace; ASSERT (VirtualMemoryMap != NULL); diff --git a/ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.c b/ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.c index 63f5632f43..952d9bfc1f 100644 --- a/ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.c +++ b/ArmVirtPkg/PlatformHasAcpiDtDxe/PlatformHasAcpiDtDxe.c @@ -18,20 +18,20 @@ EFI_STATUS EFIAPI PlatformHasAcpiDt ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; - FIRMWARE_CONFIG_ITEM FwCfgItem; - UINTN FwCfgSize; + EFI_STATUS Status; + FIRMWARE_CONFIG_ITEM FwCfgItem; + UINTN FwCfgSize; // // If we fail to install any of the necessary protocols below, the OS will be // unbootable anyway (due to lacking hardware description), so tolerate no // errors here. // - if (MAX_UINTN == MAX_UINT64 && + if ((MAX_UINTN == MAX_UINT64) && !PcdGetBool (PcdForceNoAcpi) && !EFI_ERROR ( QemuFwCfgFindFile ( @@ -39,7 +39,8 @@ PlatformHasAcpiDt ( &FwCfgItem, &FwCfgSize ) - )) { + )) + { // // Only make ACPI available on 64-bit systems, and only if QEMU generates // (a subset of) the ACPI tables. diff --git a/ArmVirtPkg/PrePi/FdtParser.c b/ArmVirtPkg/PrePi/FdtParser.c index 4754cba55c..5a91f7e62d 100644 --- a/ArmVirtPkg/PrePi/FdtParser.c +++ b/ArmVirtPkg/PrePi/FdtParser.c @@ -14,11 +14,11 @@ FindMemnode ( OUT UINT64 *SystemMemorySize ) { - INT32 MemoryNode; - INT32 AddressCells; - INT32 SizeCells; - INT32 Length; - CONST INT32 *Prop; + INT32 MemoryNode; + INT32 AddressCells; + INT32 SizeCells; + INT32 Length; + CONST INT32 *Prop; if (fdt_check_header (DeviceTreeBlob) != 0) { return FALSE; @@ -37,7 +37,7 @@ FindMemnode ( // from the root node, or use the default if not provided. // AddressCells = 1; - SizeCells = 1; + SizeCells = 1; Prop = fdt_getprop (DeviceTreeBlob, 0, "#address-cells", &Length); if (Length == 4) { @@ -63,6 +63,7 @@ FindMemnode ( if (AddressCells > 1) { *SystemMemoryBase = (*SystemMemoryBase << 32) | fdt32_to_cpu (Prop[1]); } + Prop += AddressCells; *SystemMemorySize = fdt32_to_cpu (Prop[0]); @@ -75,10 +76,10 @@ FindMemnode ( VOID CopyFdt ( - IN VOID *FdtDest, - IN VOID *FdtSource + IN VOID *FdtDest, + IN VOID *FdtSource ) { - fdt_pack(FdtSource); + fdt_pack (FdtSource); CopyMem (FdtDest, FdtSource, fdt_totalsize (FdtSource)); } diff --git a/ArmVirtPkg/PrePi/PrePi.c b/ArmVirtPkg/PrePi/PrePi.c index 4f0c3f98ba..c15dc305fc 100755 --- a/ArmVirtPkg/PrePi/PrePi.c +++ b/ArmVirtPkg/PrePi/PrePi.c @@ -30,27 +30,27 @@ ProcessLibraryConstructorList ( VOID PrePiMain ( - IN UINTN UefiMemoryBase, - IN UINTN StacksBase, - IN UINT64 StartTimeStamp + IN UINTN UefiMemoryBase, + IN UINTN StacksBase, + IN UINT64 StartTimeStamp ) { - EFI_HOB_HANDOFF_INFO_TABLE* HobList; - EFI_STATUS Status; - CHAR8 Buffer[100]; - UINTN CharCount; - UINTN StacksSize; + EFI_HOB_HANDOFF_INFO_TABLE *HobList; + EFI_STATUS Status; + CHAR8 Buffer[100]; + UINTN CharCount; + UINTN StacksSize; // Initialize the architecture specific bits ArchInitialize (); // Declare the PI/UEFI memory region HobList = HobConstructor ( - (VOID*)UefiMemoryBase, - FixedPcdGet32 (PcdSystemMemoryUefiRegionSize), - (VOID*)UefiMemoryBase, - (VOID*)StacksBase // The top of the UEFI Memory is reserved for the stacks - ); + (VOID *)UefiMemoryBase, + FixedPcdGet32 (PcdSystemMemoryUefiRegionSize), + (VOID *)UefiMemoryBase, + (VOID *)StacksBase // The top of the UEFI Memory is reserved for the stacks + ); PrePeiSetHobList (HobList); // @@ -58,7 +58,7 @@ PrePiMain ( // modifications we made with the caches and MMU off (such as the applied // relocations) don't become invisible once we turn them on. // - InvalidateDataCacheRange((VOID *)(UINTN)PcdGet64 (PcdFdBaseAddress), PcdGet32 (PcdFdSize)); + InvalidateDataCacheRange ((VOID *)(UINTN)PcdGet64 (PcdFdBaseAddress), PcdGet32 (PcdFdSize)); // Initialize MMU and Memory HOBs (Resource Descriptor HOBs) Status = MemoryPeim (UefiMemoryBase, FixedPcdGet32 (PcdSystemMemoryUefiRegionSize)); @@ -66,15 +66,21 @@ PrePiMain ( // Initialize the Serial Port SerialPortInitialize (); - CharCount = AsciiSPrint (Buffer,sizeof (Buffer),"UEFI firmware (version %s built at %a on %a)\n\r", - (CHAR16*)PcdGetPtr(PcdFirmwareVersionString), __TIME__, __DATE__); - SerialPortWrite ((UINT8 *) Buffer, CharCount); + CharCount = AsciiSPrint ( + Buffer, + sizeof (Buffer), + "UEFI firmware (version %s built at %a on %a)\n\r", + (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString), + __TIME__, + __DATE__ + ); + SerialPortWrite ((UINT8 *)Buffer, CharCount); // Create the Stacks HOB (reserve the memory for all stacks) StacksSize = PcdGet32 (PcdCPUCorePrimaryStackSize); BuildStackHob (StacksBase, StacksSize); - //TODO: Call CpuPei as a library + // TODO: Call CpuPei as a library BuildCpuHob (ArmGetPhysicalAddressBits (), PcdGet8 (PcdPrePiCpuIoSize)); // Set the Boot Mode @@ -101,12 +107,12 @@ PrePiMain ( VOID CEntryPoint ( - IN UINTN MpId, - IN UINTN UefiMemoryBase, - IN UINTN StacksBase + IN UINTN MpId, + IN UINTN UefiMemoryBase, + IN UINTN StacksBase ) { - UINT64 StartTimeStamp; + UINT64 StartTimeStamp; if (PerformanceMeasurementEnabled ()) { // Initialize the Timer Library to setup the Timer HW controller @@ -132,8 +138,8 @@ CEntryPoint ( VOID RelocatePeCoffImage ( - IN EFI_PEI_FV_HANDLE FwVolHeader, - IN PE_COFF_LOADER_READ_FILE ImageRead + IN EFI_PEI_FV_HANDLE FwVolHeader, + IN PE_COFF_LOADER_READ_FILE ImageRead ) { EFI_PEI_FILE_HANDLE FileHandle; @@ -142,20 +148,24 @@ RelocatePeCoffImage ( EFI_STATUS Status; FileHandle = NULL; - Status = FfsFindNextFile (EFI_FV_FILETYPE_SECURITY_CORE, FwVolHeader, - &FileHandle); + Status = FfsFindNextFile ( + EFI_FV_FILETYPE_SECURITY_CORE, + FwVolHeader, + &FileHandle + ); ASSERT_EFI_ERROR (Status); Status = FfsFindSectionData (EFI_SECTION_PE32, FileHandle, &SectionData); if (EFI_ERROR (Status)) { Status = FfsFindSectionData (EFI_SECTION_TE, FileHandle, &SectionData); } + ASSERT_EFI_ERROR (Status); ZeroMem (&ImageContext, sizeof ImageContext); - ImageContext.Handle = (EFI_HANDLE)SectionData; - ImageContext.ImageRead = ImageRead; + ImageContext.Handle = (EFI_HANDLE)SectionData; + ImageContext.ImageRead = ImageRead; PeCoffLoaderGetImageInfo (&ImageContext); if (ImageContext.ImageAddress != (UINTN)SectionData) { diff --git a/ArmVirtPkg/PrePi/PrePi.h b/ArmVirtPkg/PrePi/PrePi.h index cc7a492388..4bb9791e40 100644 --- a/ArmVirtPkg/PrePi/PrePi.h +++ b/ArmVirtPkg/PrePi/PrePi.h @@ -30,16 +30,16 @@ TimerConstructor ( VOID PrePiMain ( - IN UINTN UefiMemoryBase, - IN UINTN StacksBase, - IN UINT64 StartTimeStamp + IN UINTN UefiMemoryBase, + IN UINTN StacksBase, + IN UINT64 StartTimeStamp ); EFI_STATUS EFIAPI MemoryPeim ( - IN EFI_PHYSICAL_ADDRESS UefiMemoryBase, - IN UINT64 UefiMemorySize + IN EFI_PHYSICAL_ADDRESS UefiMemoryBase, + IN UINT64 UefiMemorySize ); EFI_STATUS diff --git a/ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.c b/ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.c index 438b0ff0f0..96bc442f69 100644 --- a/ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.c +++ b/ArmVirtPkg/XenAcpiPlatformDxe/XenAcpiPlatformDxe.c @@ -32,33 +32,44 @@ STATIC EFI_STATUS EFIAPI GetXenArmAcpiRsdp ( - OUT EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER **RsdpPtr + OUT EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER **RsdpPtr ) { - EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *RsdpStructurePtr; - EFI_STATUS Status; - FDT_CLIENT_PROTOCOL *FdtClient; - CONST UINT64 *Reg; - UINT32 RegSize; - UINTN AddressCells, SizeCells; - UINT64 RegBase; - UINT8 Sum; + EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *RsdpStructurePtr; + EFI_STATUS Status; + FDT_CLIENT_PROTOCOL *FdtClient; + CONST UINT64 *Reg; + UINT32 RegSize; + UINTN AddressCells, SizeCells; + UINT64 RegBase; + UINT8 Sum; RsdpStructurePtr = NULL; - FdtClient = NULL; + FdtClient = NULL; // // Get the RSDP structure address from DeviceTree // - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); - Status = FdtClient->FindCompatibleNodeReg (FdtClient, "xen,guest-acpi", - (CONST VOID **)&Reg, &AddressCells, &SizeCells, - &RegSize); + Status = FdtClient->FindCompatibleNodeReg ( + FdtClient, + "xen,guest-acpi", + (CONST VOID **)&Reg, + &AddressCells, + &SizeCells, + &RegSize + ); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_WARN, "%a: No 'xen,guest-acpi' compatible DT node found\n", - __FUNCTION__)); + DEBUG (( + DEBUG_WARN, + "%a: No 'xen,guest-acpi' compatible DT node found\n", + __FUNCTION__ + )); return EFI_NOT_FOUND; } @@ -66,13 +77,15 @@ GetXenArmAcpiRsdp ( ASSERT (SizeCells == 2); ASSERT (RegSize == 2 * sizeof (UINT64)); - RegBase = SwapBytes64(Reg[0]); + RegBase = SwapBytes64 (Reg[0]); RsdpStructurePtr = (EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *)(UINTN)RegBase; - if (RsdpStructurePtr && RsdpStructurePtr->Revision >= 2) { - Sum = CalculateSum8 ((CONST UINT8 *)RsdpStructurePtr, - sizeof (EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER)); + if (RsdpStructurePtr && (RsdpStructurePtr->Revision >= 2)) { + Sum = CalculateSum8 ( + (CONST UINT8 *)RsdpStructurePtr, + sizeof (EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER) + ); if (Sum != 0) { return EFI_ABORTED; } @@ -101,26 +114,26 @@ STATIC EFI_STATUS EFIAPI InstallXenArmTables ( - IN EFI_ACPI_TABLE_PROTOCOL *AcpiProtocol + IN EFI_ACPI_TABLE_PROTOCOL *AcpiProtocol ) { - EFI_STATUS Status; - UINTN TableHandle; - VOID *CurrentTableEntry; - UINTN CurrentTablePointer; - EFI_ACPI_DESCRIPTION_HEADER *CurrentTable; - UINTN Index; - UINTN NumberOfTableEntries; - EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *XenAcpiRsdpStructurePtr; - EFI_ACPI_DESCRIPTION_HEADER *Xsdt; - EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE *FadtTable; - EFI_ACPI_DESCRIPTION_HEADER *DsdtTable; + EFI_STATUS Status; + UINTN TableHandle; + VOID *CurrentTableEntry; + UINTN CurrentTablePointer; + EFI_ACPI_DESCRIPTION_HEADER *CurrentTable; + UINTN Index; + UINTN NumberOfTableEntries; + EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER *XenAcpiRsdpStructurePtr; + EFI_ACPI_DESCRIPTION_HEADER *Xsdt; + EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE *FadtTable; + EFI_ACPI_DESCRIPTION_HEADER *DsdtTable; XenAcpiRsdpStructurePtr = NULL; - FadtTable = NULL; - DsdtTable = NULL; - TableHandle = 0; - NumberOfTableEntries = 0; + FadtTable = NULL; + DsdtTable = NULL; + TableHandle = 0; + NumberOfTableEntries = 0; // // Try to find Xen ARM ACPI tables @@ -139,11 +152,11 @@ InstallXenArmTables ( // Retrieve the addresses of XSDT and // calculate the number of its table entries. // - Xsdt = (EFI_ACPI_DESCRIPTION_HEADER *) (UINTN) - XenAcpiRsdpStructurePtr->XsdtAddress; + Xsdt = (EFI_ACPI_DESCRIPTION_HEADER *)(UINTN) + XenAcpiRsdpStructurePtr->XsdtAddress; NumberOfTableEntries = (Xsdt->Length - - sizeof (EFI_ACPI_DESCRIPTION_HEADER)) / - sizeof (UINT64); + sizeof (EFI_ACPI_DESCRIPTION_HEADER)) / + sizeof (UINT64); // // Install ACPI tables found in XSDT. // @@ -151,21 +164,21 @@ InstallXenArmTables ( // // Get the table entry from XSDT // - CurrentTableEntry = (VOID *) ((UINT8 *) Xsdt + - sizeof (EFI_ACPI_DESCRIPTION_HEADER) + - Index * sizeof (UINT64)); - CurrentTablePointer = (UINTN) *(UINT64 *)CurrentTableEntry; - CurrentTable = (EFI_ACPI_DESCRIPTION_HEADER *) CurrentTablePointer; + CurrentTableEntry = (VOID *)((UINT8 *)Xsdt + + sizeof (EFI_ACPI_DESCRIPTION_HEADER) + + Index * sizeof (UINT64)); + CurrentTablePointer = (UINTN)*(UINT64 *)CurrentTableEntry; + CurrentTable = (EFI_ACPI_DESCRIPTION_HEADER *)CurrentTablePointer; // // Install the XSDT tables // Status = AcpiProtocol->InstallAcpiTable ( - AcpiProtocol, - CurrentTable, - CurrentTable->Length, - &TableHandle - ); + AcpiProtocol, + CurrentTable, + CurrentTable->Length, + &TableHandle + ); if (EFI_ERROR (Status)) { return Status; @@ -174,10 +187,10 @@ InstallXenArmTables ( // // Get the FACS and DSDT table address from the table FADT // - if (!AsciiStrnCmp ((CHAR8 *) &CurrentTable->Signature, "FACP", 4)) { + if (!AsciiStrnCmp ((CHAR8 *)&CurrentTable->Signature, "FACP", 4)) { FadtTable = (EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE *) - (UINTN) CurrentTablePointer; - DsdtTable = (EFI_ACPI_DESCRIPTION_HEADER *) (UINTN) FadtTable->Dsdt; + (UINTN)CurrentTablePointer; + DsdtTable = (EFI_ACPI_DESCRIPTION_HEADER *)(UINTN)FadtTable->Dsdt; } } } @@ -186,11 +199,11 @@ InstallXenArmTables ( // Install DSDT table. // Status = AcpiProtocol->InstallAcpiTable ( - AcpiProtocol, - DsdtTable, - DsdtTable->Length, - &TableHandle - ); + AcpiProtocol, + DsdtTable, + DsdtTable->Length, + &TableHandle + ); if (EFI_ERROR (Status)) { return Status; } @@ -204,15 +217,15 @@ FindAcpiTableProtocol ( VOID ) { - EFI_STATUS Status; - EFI_ACPI_TABLE_PROTOCOL *AcpiTable; + EFI_STATUS Status; + EFI_ACPI_TABLE_PROTOCOL *AcpiTable; AcpiTable = NULL; - Status = gBS->LocateProtocol ( - &gEfiAcpiTableProtocolGuid, - NULL, - (VOID**)&AcpiTable - ); + Status = gBS->LocateProtocol ( + &gEfiAcpiTableProtocolGuid, + NULL, + (VOID **)&AcpiTable + ); ASSERT_EFI_ERROR (Status); return AcpiTable; } @@ -228,15 +241,14 @@ FindAcpiTableProtocol ( @return EFI_OUT_OF_RESOURCES **/ - EFI_STATUS EFIAPI XenAcpiPlatformEntryPoint ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; + EFI_STATUS Status; Status = InstallXenArmTables (FindAcpiTableProtocol ()); return Status; diff --git a/ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.c b/ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.c index 3bda69257d..b629789371 100644 --- a/ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.c +++ b/ArmVirtPkg/XenPlatformHasAcpiDtDxe/XenPlatformHasAcpiDtDxe.c @@ -16,11 +16,11 @@ EFI_STATUS EFIAPI XenPlatformHasAcpiDt ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; + EFI_STATUS Status; // // If we fail to install any of the necessary protocols below, the OS will be diff --git a/ArmVirtPkg/XenioFdtDxe/XenioFdtDxe.c b/ArmVirtPkg/XenioFdtDxe/XenioFdtDxe.c index 5113c000b2..23d504cc64 100644 --- a/ArmVirtPkg/XenioFdtDxe/XenioFdtDxe.c +++ b/ArmVirtPkg/XenioFdtDxe/XenioFdtDxe.c @@ -18,28 +18,39 @@ EFI_STATUS EFIAPI InitializeXenioFdtDxe ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable + IN EFI_HANDLE ImageHandle, + IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; - FDT_CLIENT_PROTOCOL *FdtClient; - CONST UINT64 *Reg; - UINT32 RegSize; - UINTN AddressCells, SizeCells; - EFI_HANDLE Handle; - UINT64 RegBase; + EFI_STATUS Status; + FDT_CLIENT_PROTOCOL *FdtClient; + CONST UINT64 *Reg; + UINT32 RegSize; + UINTN AddressCells, SizeCells; + EFI_HANDLE Handle; + UINT64 RegBase; - Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL, - (VOID **)&FdtClient); + Status = gBS->LocateProtocol ( + &gFdtClientProtocolGuid, + NULL, + (VOID **)&FdtClient + ); ASSERT_EFI_ERROR (Status); - Status = FdtClient->FindCompatibleNodeReg (FdtClient, "xen,xen", - (CONST VOID **)&Reg, &AddressCells, &SizeCells, - &RegSize); + Status = FdtClient->FindCompatibleNodeReg ( + FdtClient, + "xen,xen", + (CONST VOID **)&Reg, + &AddressCells, + &SizeCells, + &RegSize + ); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_WARN, "%a: No 'xen,xen' compatible DT node found\n", - __FUNCTION__)); + DEBUG (( + DEBUG_WARN, + "%a: No 'xen,xen' compatible DT node found\n", + __FUNCTION__ + )); return EFI_UNSUPPORTED; } @@ -52,11 +63,16 @@ InitializeXenioFdtDxe ( // MMIO flavor of the XenBus root device I/O protocol // RegBase = SwapBytes64 (Reg[0]); - Handle = NULL; - Status = XenIoMmioInstall (&Handle, RegBase); + Handle = NULL; + Status = XenIoMmioInstall (&Handle, RegBase); if (EFI_ERROR (Status)) { - DEBUG ((DEBUG_ERROR, "%a: XenIoMmioInstall () failed on a new handle " - "(Status == %r)\n", __FUNCTION__, Status)); + DEBUG (( + DEBUG_ERROR, + "%a: XenIoMmioInstall () failed on a new handle " + "(Status == %r)\n", + __FUNCTION__, + Status + )); return Status; } -- 2.39.2