From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=209.132.183.28; helo=mx1.redhat.com; envelope-from=lersek@redhat.com; receiver=edk2-devel@lists.01.org Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 8E95E20359A68 for ; Wed, 15 Nov 2017 14:59:08 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 39A8083F40; Wed, 15 Nov 2017 23:03:17 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-122-47.rdu2.redhat.com [10.10.122.47]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4938F17ACE; Wed, 15 Nov 2017 23:03:16 +0000 (UTC) To: Ard Biesheuvel , edk2-devel@lists.01.org Cc: leif.lindholm@linaro.org References: <20171115140319.32570-1-ard.biesheuvel@linaro.org> From: Laszlo Ersek Message-ID: <90b3533e-817b-01fa-b089-9b3b2548168e@redhat.com> Date: Thu, 16 Nov 2017 00:03:15 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <20171115140319.32570-1-ard.biesheuvel@linaro.org> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Wed, 15 Nov 2017 23:03:17 +0000 (UTC) Subject: Re: [PATCH] ArmVirtPkg: remove ArmPlatformSysConfigLib dependency X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Nov 2017 22:59:09 -0000 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 11/15/17 15:03, Ard Biesheuvel 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 > --- > 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 > - *_*_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 > #include > #include > -#include > > // 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 > #include > #include > -#include > #include > > /** > 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 > #include > #include > -#include > #include > #include > #include > 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 > #include > #include > -#include > > // 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 > #include > #include > -#include > #include > > /** > 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 > #include > #include > -#include > > // 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 > #include > > +#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 > Reviewed-by: Laszlo Ersek