From: Laszlo Ersek <lersek@redhat.com>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>, edk2-devel@lists.01.org
Cc: leif.lindholm@linaro.org
Subject: Re: [PATCH] ArmVirtPkg: remove ArmPlatformSysConfigLib dependency
Date: Thu, 16 Nov 2017 00:03:15 +0100 [thread overview]
Message-ID: <90b3533e-817b-01fa-b089-9b3b2548168e@redhat.com> (raw)
In-Reply-To: <20171115140319.32570-1-ard.biesheuvel@linaro.org>
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 <ard.biesheuvel@linaro.org>
> ---
> 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 <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
>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
next prev parent reply other threads:[~2017-11-15 22:59 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-15 14:03 [PATCH] ArmVirtPkg: remove ArmPlatformSysConfigLib dependency Ard Biesheuvel
2017-11-15 23:03 ` Laszlo Ersek [this message]
2017-11-16 9:40 ` Ard Biesheuvel
2017-11-16 11:59 ` Leif Lindholm
2017-11-16 12:34 ` Ard Biesheuvel
2017-11-16 14:15 ` Ard Biesheuvel
2017-11-16 16:28 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=90b3533e-817b-01fa-b089-9b3b2548168e@redhat.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox