diff --git a/ArmPlatformPkg/Include/Library/ArmPlatformGlobalVariableLib.h b/ArmPlatformPkg/Include/Library/ArmPlatformGlobalVariableLib.h deleted file mode 100644 index b1a080c00a..0000000000 --- a/ArmPlatformPkg/Include/Library/ArmPlatformGlobalVariableLib.h +++ /dev/null @@ -1,38 +0,0 @@ -/** @file -* -* Copyright (c) 2011-2012, ARM Limited. All rights reserved. -* -* This program and the accompanying materials -* are licensed and made available under the terms and conditions of the BSD License -* which accompanies this distribution. The full text of the license may be found at -* http://opensource.org/licenses/bsd-license.php -* -* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -* -**/ - -#ifndef __ARM_PLATFORM_GLOBAL_VARIABLE_LIB_H_ -#define __ARM_PLATFORM_GLOBAL_VARIABLE_LIB_H_ - -VOID -ArmPlatformGetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ); - -VOID -ArmPlatformSetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ); - -VOID* -ArmPlatformGetGlobalVariableAddress ( - IN UINTN VariableOffset - ); - -#endif - diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.c b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.c deleted file mode 100644 index 511d0f69de..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.c +++ /dev/null @@ -1,76 +0,0 @@ -/** @file -* -* Copyright (c) 2011-2012, ARM Limited. All rights reserved. -* -* This program and the accompanying materials -* are licensed and made available under the terms and conditions of the BSD License -* which accompanies this distribution. The full text of the license may be found at -* http://opensource.org/licenses/bsd-license.php -* -* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -* -**/ - -#include -#include -#include -#include -#include -#include - -#include - -UINTN mGlobalVariableBase = 0; - -RETURN_STATUS -EFIAPI -ArmPlatformGlobalVariableConstructor ( - VOID - ) -{ - ARM_HOB_GLOBAL_VARIABLE *Hob; - - Hob = GetFirstGuidHob (&gArmGlobalVariableGuid); - ASSERT (Hob != NULL); - - mGlobalVariableBase = Hob->GlobalVariableBase; - - return EFI_SUCCESS; -} - -VOID -ArmPlatformGetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - if (mGlobalVariableBase == 0) { - ArmPlatformGlobalVariableConstructor (); - } - - CopyMem (Variable, (VOID*)(mGlobalVariableBase + VariableOffset), VariableSize); -} - -VOID -ArmPlatformSetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - if (mGlobalVariableBase == 0) { - ArmPlatformGlobalVariableConstructor (); - } - - CopyMem ((VOID*)(mGlobalVariableBase + VariableOffset), Variable, VariableSize); -} - -VOID* -ArmPlatformGetGlobalVariableAddress ( - IN UINTN VariableOffset - ) -{ - return (VOID*)(mGlobalVariableBase + VariableOffset); -} diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.inf b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.inf deleted file mode 100644 index e90d6a5811..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.inf +++ /dev/null @@ -1,44 +0,0 @@ -#/** @file -# Timer library implementation -# -# -# Copyright (c) 2011-2012, ARM Ltd. All rights reserved.
-# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = DxeArmPlatformGlobalVariableLib - FILE_GUID = 53fa3cc3-23b7-4ec2-9bfa-30257d7e1135 - MODULE_TYPE = BASE - VERSION_STRING = 1.0 - LIBRARY_CLASS = ArmPlatformGlobalVariableLib - - CONSTRUCTOR = ArmPlatformGlobalVariableConstructor - -[Sources.common] - DxeArmPlatformGlobalVariableLib.c - -[Packages] - MdePkg/MdePkg.dec - ArmPlatformPkg/ArmPlatformPkg.dec - -[LibraryClasses] - BaseLib - DebugLib - HobLib - -[Guids] - gArmGlobalVariableGuid - -[FixedPcd] - gArmPlatformTokenSpaceGuid.PcdPeiGlobalVariableSize - diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.c b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.c deleted file mode 100644 index 2ffbdbedd8..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.c +++ /dev/null @@ -1,84 +0,0 @@ -/** @file -* -* Copyright (c) 2011-2012, ARM Limited. All rights reserved. -* -* This program and the accompanying materials -* are licensed and made available under the terms and conditions of the BSD License -* which accompanies this distribution. The full text of the license may be found at -* http://opensource.org/licenses/bsd-license.php -* -* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -* -**/ - -#include -#include -#include -#include -#include -#include - -// Declared by ArmPlatformPkg/PrePi Module -extern UINTN mGlobalVariableBase; - -VOID -ArmPlatformGetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdPeiGlobalVariableSize)); - - GlobalVariableBase = PcdGet64 (PcdCPUCoresStackBase) + PcdGet32 (PcdCPUCorePrimaryStackSize) - PcdGet32 (PcdPeiGlobalVariableSize); - - if (VariableSize == 4) { - *(UINT32*)Variable = ReadUnaligned32 ((CONST UINT32*)(GlobalVariableBase + VariableOffset)); - } else if (VariableSize == 8) { - *(UINT64*)Variable = ReadUnaligned64 ((CONST UINT64*)(GlobalVariableBase + VariableOffset)); - } else { - CopyMem (Variable, (VOID*)(GlobalVariableBase + VariableOffset), VariableSize); - } -} - -VOID -ArmPlatformSetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdPeiGlobalVariableSize)); - - GlobalVariableBase = PcdGet64 (PcdCPUCoresStackBase) + PcdGet32 (PcdCPUCorePrimaryStackSize) - PcdGet32 (PcdPeiGlobalVariableSize); - - if (VariableSize == 4) { - WriteUnaligned32 ((UINT32*)(GlobalVariableBase + VariableOffset), *(UINT32*)Variable); - } else if (VariableSize == 8) { - WriteUnaligned64 ((UINT64*)(GlobalVariableBase + VariableOffset), *(UINT64*)Variable); - } else { - CopyMem ((VOID*)(GlobalVariableBase + VariableOffset), Variable, VariableSize); - } -} - -VOID* -ArmPlatformGetGlobalVariableAddress ( - IN UINTN VariableOffset - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdPeiGlobalVariableSize)); - - GlobalVariableBase = PcdGet64 (PcdCPUCoresStackBase) + PcdGet32 (PcdCPUCorePrimaryStackSize) - PcdGet32 (PcdPeiGlobalVariableSize); - - return (VOID*)(GlobalVariableBase + VariableOffset); -} diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf deleted file mode 100644 index 09995e1fa0..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf +++ /dev/null @@ -1,40 +0,0 @@ -#/** @file -# ArmPlatformGlobalVariableLib library implementation -# -# Copyright (c) 2011-2012, ARM Ltd. All rights reserved.
-# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = PeiArmPlatformGlobalVariableLib - FILE_GUID = 3e03daf2-b7b4-45f7-80b2-12aba043391f - MODULE_TYPE = BASE - VERSION_STRING = 1.0 - LIBRARY_CLASS = ArmPlatformGlobalVariableLib - -[Sources.common] - PeiArmPlatformGlobalVariableLib.c - -[Packages] - MdePkg/MdePkg.dec - ArmPlatformPkg/ArmPlatformPkg.dec - -[LibraryClasses] - BaseLib - DebugLib - PcdLib - -[FixedPcd] - gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase - gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize - gArmPlatformTokenSpaceGuid.PcdPeiGlobalVariableSize - diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.c b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.c deleted file mode 100644 index db69ba047d..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.c +++ /dev/null @@ -1,107 +0,0 @@ -/** @file -* -* Copyright (c) 2011-2015, ARM Limited. All rights reserved. -* -* This program and the accompanying materials -* are licensed and made available under the terms and conditions of the BSD License -* which accompanies this distribution. The full text of the license may be found at -* http://opensource.org/licenses/bsd-license.php -* -* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -* -**/ - -#include -#include -#include -#include -#include -#include - -extern UINT64 mSystemMemoryEnd; - -#define IS_XIP() (((UINT32)PcdGet64 (PcdFdBaseAddress) > (UINT32)(mSystemMemoryEnd)) || \ - ((PcdGet64 (PcdFdBaseAddress) + PcdGet32 (PcdFdSize)) < PcdGet64 (PcdSystemMemoryBase))) - -// Declared by ArmPlatformPkg/PrePi Module -extern UINTN mGlobalVariableBase; - -VOID -ArmPlatformGetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdPeiGlobalVariableSize)); - - if (IS_XIP()) { - // In Case of XIP, we expect the Primary Stack at the top of the System Memory - // The size must be 64bit aligned to allow 64bit variable to be aligned - GlobalVariableBase = mSystemMemoryEnd + 1 - ALIGN_VALUE (PcdGet32 (PcdPeiGlobalVariableSize), 0x8); - } else { - GlobalVariableBase = mGlobalVariableBase; - } - - if (VariableSize == 4) { - *(UINT32*)Variable = ReadUnaligned32 ((CONST UINT32*)(GlobalVariableBase + VariableOffset)); - } else if (VariableSize == 8) { - *(UINT64*)Variable = ReadUnaligned64 ((CONST UINT64*)(GlobalVariableBase + VariableOffset)); - } else { - CopyMem (Variable, (VOID*)(GlobalVariableBase + VariableOffset), VariableSize); - } -} - -VOID -ArmPlatformSetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdPeiGlobalVariableSize)); - - if (IS_XIP()) { - // In Case of XIP, we expect the Primary Stack at the top of the System Memory - // The size must be 64bit aligned to allow 64bit variable to be aligned - GlobalVariableBase = mSystemMemoryEnd + 1 - ALIGN_VALUE (PcdGet32 (PcdPeiGlobalVariableSize), 0x8); - } else { - GlobalVariableBase = mGlobalVariableBase; - } - - if (VariableSize == 4) { - WriteUnaligned32 ((UINT32*)(GlobalVariableBase + VariableOffset), *(UINT32*)Variable); - } else if (VariableSize == 8) { - WriteUnaligned64 ((UINT64*)(GlobalVariableBase + VariableOffset), *(UINT64*)Variable); - } else { - CopyMem ((VOID*)(GlobalVariableBase + VariableOffset), Variable, VariableSize); - } -} - -VOID* -ArmPlatformGetGlobalVariableAddress ( - IN UINTN VariableOffset - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdPeiGlobalVariableSize)); - - if (IS_XIP()) { - // In Case of XIP, we expect the Primary Stack at the top of the System Memory - // The size must be 64bit aligned to allow 64bit variable to be aligned - GlobalVariableBase = mSystemMemoryEnd + 1 - ALIGN_VALUE (PcdGet32 (PcdPeiGlobalVariableSize), 0x8); - } else { - GlobalVariableBase = mGlobalVariableBase; - } - - return (VOID*)(GlobalVariableBase + VariableOffset); -} diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf deleted file mode 100644 index 1b5b8fcbee..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf +++ /dev/null @@ -1,44 +0,0 @@ -#/** @file -# -# Copyright (c) 2011-2015, ARM Ltd. All rights reserved.
-# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = PrePiArmPlatformGlobalVariableLib - FILE_GUID = 44d59470-e5e6-4811-af00-33bb573a804b - MODULE_TYPE = BASE - VERSION_STRING = 1.0 - LIBRARY_CLASS = ArmPlatformGlobalVariableLib - -[Sources.common] - PrePiArmPlatformGlobalVariableLib.c - -[Packages] - MdePkg/MdePkg.dec - ArmPlatformPkg/ArmPlatformPkg.dec - ArmPkg/ArmPkg.dec - -[LibraryClasses] - BaseLib - DebugLib - PcdLib - -[FixedPcd] - gArmTokenSpaceGuid.PcdFdSize - - gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize - gArmPlatformTokenSpaceGuid.PcdPeiGlobalVariableSize - -[Pcd] - gArmTokenSpaceGuid.PcdSystemMemoryBase - gArmTokenSpaceGuid.PcdFdBaseAddress diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.c b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.c deleted file mode 100644 index aa8d8927c1..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.c +++ /dev/null @@ -1,81 +0,0 @@ -/** @file -* -* Copyright (c) 2011-2012, ARM Limited. All rights reserved. -* -* This program and the accompanying materials -* are licensed and made available under the terms and conditions of the BSD License -* which accompanies this distribution. The full text of the license may be found at -* http://opensource.org/licenses/bsd-license.php -* -* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -* -**/ - -#include -#include -#include -#include -#include -#include - -VOID -ArmPlatformGetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdSecGlobalVariableSize)); - - GlobalVariableBase = PcdGet32 (PcdCPUCoresSecStackBase) + PcdGet32 (PcdCPUCoreSecPrimaryStackSize) - PcdGet32 (PcdSecGlobalVariableSize); - - if (VariableSize == 4) { - *(UINT32*)Variable = ReadUnaligned32 ((CONST UINT32*)(GlobalVariableBase + VariableOffset)); - } else if (VariableSize == 8) { - *(UINT64*)Variable = ReadUnaligned64 ((CONST UINT64*)(GlobalVariableBase + VariableOffset)); - } else { - CopyMem (Variable, (VOID*)(GlobalVariableBase + VariableOffset), VariableSize); - } -} - -VOID -ArmPlatformSetGlobalVariable ( - IN UINTN VariableOffset, - IN UINTN VariableSize, - OUT VOID* Variable - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdSecGlobalVariableSize)); - - GlobalVariableBase = PcdGet32 (PcdCPUCoresSecStackBase) + PcdGet32 (PcdCPUCoreSecPrimaryStackSize) - PcdGet32 (PcdSecGlobalVariableSize); - - if (VariableSize == 4) { - WriteUnaligned32 ((UINT32*)(GlobalVariableBase + VariableOffset), *(UINT32*)Variable); - } else if (VariableSize == 8) { - WriteUnaligned64 ((UINT64*)(GlobalVariableBase + VariableOffset), *(UINT64*)Variable); - } else { - CopyMem ((VOID*)(GlobalVariableBase + VariableOffset), Variable, VariableSize); - } -} - -VOID* -ArmPlatformGetGlobalVariableAddress ( - IN UINTN VariableOffset - ) -{ - UINTN GlobalVariableBase; - - // Ensure the Global Variable Size have been initialized - ASSERT (VariableOffset < PcdGet32 (PcdSecGlobalVariableSize)); - - GlobalVariableBase = PcdGet32 (PcdCPUCoresSecStackBase) + PcdGet32 (PcdCPUCoreSecPrimaryStackSize) - PcdGet32 (PcdSecGlobalVariableSize); - - return (VOID*)(GlobalVariableBase + VariableOffset); -} diff --git a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.inf b/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.inf deleted file mode 100644 index d64cbafb1e..0000000000 --- a/ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Sec/SecArmPlatformGlobalVariableLib.inf +++ /dev/null @@ -1,39 +0,0 @@ -#/** @file -# -# Copyright (c) 2011-2012, ARM Ltd. All rights reserved.
-# -# This program and the accompanying materials -# are licensed and made available under the terms and conditions of the BSD License -# which accompanies this distribution. The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = SecArmPlatformGlobalVariableLib - FILE_GUID = e01f4944-df86-488b-b89b-79e7a53a3a5d - MODULE_TYPE = BASE - VERSION_STRING = 1.0 - LIBRARY_CLASS = ArmPlatformGlobalVariableLib - -[Sources.common] - SecArmPlatformGlobalVariableLib.c - -[Packages] - MdePkg/MdePkg.dec - ArmPlatformPkg/ArmPlatformPkg.dec - -[LibraryClasses] - BaseLib - DebugLib - PcdLib - -[FixedPcd] - gArmPlatformTokenSpaceGuid.PcdCPUCoresSecStackBase - gArmPlatformTokenSpaceGuid.PcdCPUCoreSecPrimaryStackSize - gArmPlatformTokenSpaceGuid.PcdSecGlobalVariableSize -