On 15 November 2017 at 14:03, Ard Biesheuvel <[email protected]> wrote: > Now that the PL031 RTC driver library no longer depends on the ARM > platform specific ArmPlatformSysConfigLib, we no longer need to > implement ArmPlatform.h or have a resolution for that library. > This allows us to get rid of a rather dodgy practice of including > platform headers using compiler flags, which is a bad idea at various > levels. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel <[email protected]> > --- > PL031 patch is on-list and pending. > > ArmVirtPkg/ArmVirtQemu.dsc | 7 ----- > ArmVirtPkg/ArmVirtQemuKernel.dsc | 6 ---- > ArmVirtPkg/ArmVirtXen.dsc | 6 ---- > ArmVirtPkg/Include/ArmPlatform.h | 33 > -------------------- > ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/QemuVirtMem.c | 1 - > ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/RelocatableVirt.c | 1 - > ArmVirtPkg/Library/ArmVirtPlatformLib/Virt.c | 1 - > ArmVirtPkg/Library/ArmVirtPlatformLib/VirtMem.c | 1 - > ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/RelocatableVirt.c | 1 - > ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/XenVirtMem.c | 1 - > ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c | 7 ++++- > 11 files changed, 6 insertions(+), 59 deletions(-) > > diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc > index 8a60b61f2aa6..d1b3849d856a 100644 > --- a/ArmVirtPkg/ArmVirtQemu.dsc > +++ b/ArmVirtPkg/ArmVirtQemu.dsc > @@ -49,7 +49,6 @@ [LibraryClasses.common] > QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/BaseQemuFwCfgS3LibNull.inf > > ArmPlatformLib|ArmVirtPkg/Library/ArmVirtPlatformLib/ArmVirtPlatformLib.inf > - > ArmPlatformSysConfigLib|ArmPlatformPkg/Library/ArmPlatformSysConfigLibNull/ArmPlatformSysConfigLibNull.inf > > TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf > NorFlashPlatformLib|ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.inf > @@ -71,12 +70,6 @@ [LibraryClasses.common] > [LibraryClasses.common.UEFI_DRIVER] > UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf > > -[BuildOptions] > - RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 > -I$(WORKSPACE)/ArmVirtPkg/Include > - GCC:*_*_ARM_PLATFORM_FLAGS == -mcpu=cortex-a15 > -I$(WORKSPACE)/ArmVirtPkg/Include
Oops. I will need to retain the -mcpu setting here, or the 'hvc' instruction will be rejected by the assembler. > - *_*_AARCH64_PLATFORM_FLAGS == -I$(WORKSPACE)/ArmVirtPkg/Include > - > - > > ################################################################################ > # > # Pcd Section - list of all EDK II PCD Entries defined by this Platform > diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc > b/ArmVirtPkg/ArmVirtQemuKernel.dsc > index 9a31ec93ca06..c7058718b0a6 100644 > --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc > +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc > @@ -49,7 +49,6 @@ [LibraryClasses.common] > QemuFwCfgS3Lib|OvmfPkg/Library/QemuFwCfgS3Lib/BaseQemuFwCfgS3LibNull.inf > > > ArmPlatformLib|ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/ArmQemuRelocatablePlatformLib.inf > - > ArmPlatformSysConfigLib|ArmPlatformPkg/Library/ArmPlatformSysConfigLibNull/ArmPlatformSysConfigLibNull.inf > > TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf > NorFlashPlatformLib|ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.inf > @@ -71,11 +70,6 @@ [LibraryClasses.common] > [LibraryClasses.common.UEFI_DRIVER] > UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf > > -[BuildOptions] > - RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 > -I$(WORKSPACE)/ArmVirtPkg/Include > - GCC:*_*_ARM_PLATFORM_FLAGS == -mcpu=cortex-a15 > -I$(WORKSPACE)/ArmVirtPkg/Include > - *_*_AARCH64_PLATFORM_FLAGS == -I$(WORKSPACE)/ArmVirtPkg/Include > - > [BuildOptions.ARM.EDKII.SEC, BuildOptions.ARM.EDKII.BASE] > # Avoid MOVT/MOVW instruction pairs in code that may end up in the PIE > # executable we build for the relocatable PrePi. They are not runtime > diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc > index e9437066ca56..7a443483d1ac 100644 > --- a/ArmVirtPkg/ArmVirtXen.dsc > +++ b/ArmVirtPkg/ArmVirtXen.dsc > @@ -44,7 +44,6 @@ [LibraryClasses] > > VirtioMmioDeviceLib|OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf > > > ArmPlatformLib|ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/ArmXenRelocatablePlatformLib.inf > - > ArmPlatformSysConfigLib|ArmPlatformPkg/Library/ArmPlatformSysConfigLibNull/ArmPlatformSysConfigLibNull.inf > > TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf > > @@ -56,11 +55,6 @@ [LibraryClasses] > [LibraryClasses.common.UEFI_DRIVER] > UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf > > -[BuildOptions] > - RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A15 > -I$(WORKSPACE)/ArmVirtPkg/Include > - GCC:*_*_ARM_PLATFORM_FLAGS == -mcpu=cortex-a15 > -I$(WORKSPACE)/ArmVirtPkg/Include > - GCC:*_*_AARCH64_PLATFORM_FLAGS == -I$(WORKSPACE)/ArmVirtPkg/Include > - > [BuildOptions.ARM.EDKII.SEC, BuildOptions.ARM.EDKII.BASE] > # Avoid MOVT/MOVW instruction pairs in code that may end up in the PIE > # executable we build for the relocatable PrePi. They are not runtime > diff --git a/ArmVirtPkg/Include/ArmPlatform.h > b/ArmVirtPkg/Include/ArmPlatform.h > deleted file mode 100644 > index 77178aabb310..000000000000 > --- a/ArmVirtPkg/Include/ArmPlatform.h > +++ /dev/null > @@ -1,33 +0,0 @@ > -/** @file > -* Header defining platform constants (Base addresses, sizes, flags) > -* > -* Copyright (c) 2011, ARM Limited. All rights reserved. > -* Copyright (c) 2014, Linaro Limited > -* > -* 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 __PLATFORM_H__ > -#define __PLATFORM_H__ > - > -// > -// We don't care about this value, but the PL031 driver depends on the macro > -// to exist: it will pass it on to our ArmPlatformSysConfigLib:ConfigGet() > -// function, which just returns EFI_UNSUPPORTED. > -// > -#define SYS_CFG_RTC 0x0 > - > -#define QEMU_NOR_BLOCK_SIZE SIZE_256KB > -#define QEMU_NOR0_BASE 0x0 > -#define QEMU_NOR0_SIZE SIZE_64MB > -#define QEMU_NOR1_BASE 0x04000000 > -#define QEMU_NOR1_SIZE SIZE_64MB > - > -#endif > diff --git a/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/QemuVirtMem.c > b/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/QemuVirtMem.c > index be512aa3d5b1..2ce5c48d52cf 100644 > --- a/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/QemuVirtMem.c > +++ b/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/QemuVirtMem.c > @@ -18,7 +18,6 @@ > #include <Library/PcdLib.h> > #include <Library/IoLib.h> > #include <Library/MemoryAllocationLib.h> > -#include <ArmPlatform.h> > > // Number of Virtual Memory Map Descriptors > #define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 5 > diff --git > a/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/RelocatableVirt.c > b/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/RelocatableVirt.c > index c10c09fed2bd..6df207733ab2 100644 > --- a/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/RelocatableVirt.c > +++ b/ArmVirtPkg/Library/ArmQemuRelocatablePlatformLib/RelocatableVirt.c > @@ -18,7 +18,6 @@ > #include <Library/IoLib.h> > #include <Library/ArmPlatformLib.h> > #include <Library/DebugLib.h> > -#include <ArmPlatform.h> > #include <Pi/PiBootMode.h> > > /** > diff --git a/ArmVirtPkg/Library/ArmVirtPlatformLib/Virt.c > b/ArmVirtPkg/Library/ArmVirtPlatformLib/Virt.c > index fcaf3c681a97..140bdde8b2ac 100644 > --- a/ArmVirtPkg/Library/ArmVirtPlatformLib/Virt.c > +++ b/ArmVirtPkg/Library/ArmVirtPlatformLib/Virt.c > @@ -19,7 +19,6 @@ > #include <Library/ArmPlatformLib.h> > #include <Library/DebugLib.h> > #include <Library/PcdLib.h> > -#include <ArmPlatform.h> > #include <libfdt.h> > #include <Pi/PiBootMode.h> > #include <Uefi/UefiBaseType.h> > diff --git a/ArmVirtPkg/Library/ArmVirtPlatformLib/VirtMem.c > b/ArmVirtPkg/Library/ArmVirtPlatformLib/VirtMem.c > index 666edb47ce97..d10548f86dfc 100644 > --- a/ArmVirtPkg/Library/ArmVirtPlatformLib/VirtMem.c > +++ b/ArmVirtPkg/Library/ArmVirtPlatformLib/VirtMem.c > @@ -18,7 +18,6 @@ > #include <Library/PcdLib.h> > #include <Library/IoLib.h> > #include <Library/MemoryAllocationLib.h> > -#include <ArmPlatform.h> > > // Number of Virtual Memory Map Descriptors > #define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 5 > diff --git > a/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/RelocatableVirt.c > b/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/RelocatableVirt.c > index c10c09fed2bd..6df207733ab2 100644 > --- a/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/RelocatableVirt.c > +++ b/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/RelocatableVirt.c > @@ -18,7 +18,6 @@ > #include <Library/IoLib.h> > #include <Library/ArmPlatformLib.h> > #include <Library/DebugLib.h> > -#include <ArmPlatform.h> > #include <Pi/PiBootMode.h> > > /** > diff --git a/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/XenVirtMem.c > b/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/XenVirtMem.c > index 657b840059c2..63090586cf8b 100644 > --- a/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/XenVirtMem.c > +++ b/ArmVirtPkg/Library/ArmXenRelocatablePlatformLib/XenVirtMem.c > @@ -18,7 +18,6 @@ > #include <Library/PcdLib.h> > #include <Library/IoLib.h> > #include <Library/MemoryAllocationLib.h> > -#include <ArmPlatform.h> > > // Number of Virtual Memory Map Descriptors > #define MAX_VIRTUAL_MEMORY_MAP_DESCRIPTORS 2 > diff --git a/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c > b/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c > index d63a2d989f69..e3bbae5b06c5 100644 > --- a/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c > +++ b/ArmVirtPkg/Library/NorFlashQemuLib/NorFlashQemuLib.c > @@ -12,9 +12,14 @@ > > **/ > > -#include <ArmPlatform.h> > #include <Library/NorFlashPlatformLib.h> > > +#define QEMU_NOR_BLOCK_SIZE SIZE_256KB > +#define QEMU_NOR0_BASE 0x0 > +#define QEMU_NOR0_SIZE SIZE_64MB > +#define QEMU_NOR1_BASE 0x04000000 > +#define QEMU_NOR1_SIZE SIZE_64MB > + > EFI_STATUS > NorFlashPlatformInitialization ( > VOID > -- > 2.11.0 > _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

