From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: "edk2-devel@lists.01.org" <edk2-devel@lists.01.org>,
Laszlo Ersek <lersek@redhat.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: Re: [PATCH v2 00/14] ArmVirtPkg: get rid of ArmPlatformLib
Date: Thu, 23 Nov 2017 16:56:45 +0000 [thread overview]
Message-ID: <CAKv+Gu-MPM=x9nTVic24aEiBY_rqRv4fE8w=ukDDJBCgJiSqBA@mail.gmail.com> (raw)
In-Reply-To: <20171122100731.24525-1-ard.biesheuvel@linaro.org>
On 22 November 2017 at 10:07, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
> ArmPlatformLib is a mixed bag of platform specific hooks, some of which
> are called from early startup code, and some of which are called from C
> code, to get the boot mode, memory layout etc.
>
> This library class is tightly coupled to the old ARM implementations that
> ran some parts of UEFI in the secure world, and booted all cores into SEC.
> Also, the fact that both PrePi and PrePeiCore use ArmPlatformLib makes it
> difficult to use PEI phase features such as PPI depexes. It would be better
> if we could get rid of it completely, or at least not require each platform
> to implement it in its entirety.
>
> So as a first step towards phasing out ArmPlatformLib to the extent possible,
> let's remove it from ArmVirtPkg. For ArmVirtXen and ArmVirtQemuKernel, we can
> get rid of it completely. For ArmVirtQemu, we can't, but we can still remove
> our own implementation by switching to the NULL implementation from
> ArmPlatformPkg (which does require a minimal tweak in patch #1). Further
> reductions of the scope of ArmPlatformLib will be reflected in that library
> without the need for further changes to ArmVirtPkg.
>
> v2: drop ArmPlatformPkg prereq patch, it is merged now
> use constructor instead of PEIM depex ordering to ensure ArmVirtQemu's
> PcdSystemMemorySize PCD is set before being consumed
> add acks from Laszlo
>
> Ard Biesheuvel (14):
> ArmVirtPkg/PrePi: run all library constructors by hand
> ArmVirtPkg/PrePi: remove unused GetPlatformPpi() function
> ArmVirtPkg/PrePi: remove bogus primary core check
> ArmVirtPkg/PrePi: move DRAM discovery code into PrePi
> ArmVirtPkg/PrePi: remove dependency on ArmPlatformLib
> ArmVirtPkg/PrePi: remove ArmPlatformStackLib dependency
> ArmVirtPkg/PrePi: remove bogus IntelFrameworkModulePkg.dec dependency
> ArmVirtPkg/ArmVirtPlatformLib: remove support for uncached mappings
> ArmVirtPkg: introduce ArmVirtMemInfoLib library class
> ArmVirtPkg/ArmVirtXen: add ArmVirtMemInfoLib implementation
> ArmVirtPkg/ArmVirtQemu: add ArmVirtMemInfoLib implementation
> ArmVirtPkg: create QemuVirtMemInfoLib version for ArmVirtQemu
> ArmVirtPkg/ArmVirtMemoryInitPeiLib: move to ArmVirtMemInfoLib
> ArmVirtPkg: remove ArmPlatformLib implementations
>
Pushed as 14ca435fb6c0..3d544c564bd6
Thanks.
prev parent reply other threads:[~2017-11-23 16:52 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-22 10:07 [PATCH v2 00/14] ArmVirtPkg: get rid of ArmPlatformLib Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 01/14] ArmVirtPkg/PrePi: run all library constructors by hand Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 02/14] ArmVirtPkg/PrePi: remove unused GetPlatformPpi() function Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 03/14] ArmVirtPkg/PrePi: remove bogus primary core check Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 04/14] ArmVirtPkg/PrePi: move DRAM discovery code into PrePi Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 05/14] ArmVirtPkg/PrePi: remove dependency on ArmPlatformLib Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 06/14] ArmVirtPkg/PrePi: remove ArmPlatformStackLib dependency Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 07/14] ArmVirtPkg/PrePi: remove bogus IntelFrameworkModulePkg.dec dependency Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 08/14] ArmVirtPkg/ArmVirtPlatformLib: remove support for uncached mappings Ard Biesheuvel
2017-11-22 10:07 ` [PATCH v2 09/14] ArmVirtPkg: introduce ArmVirtMemInfoLib library class Ard Biesheuvel
2017-11-23 16:00 ` Laszlo Ersek
2017-11-22 10:07 ` [PATCH v2 10/14] ArmVirtPkg/ArmVirtXen: add ArmVirtMemInfoLib implementation Ard Biesheuvel
2017-11-22 17:03 ` Julien Grall
2017-11-22 10:07 ` [PATCH v2 11/14] ArmVirtPkg/ArmVirtQemu: " Ard Biesheuvel
2017-11-23 16:18 ` Laszlo Ersek
2017-11-22 10:07 ` [PATCH v2 12/14] ArmVirtPkg: create QemuVirtMemInfoLib version for ArmVirtQemu Ard Biesheuvel
2017-11-23 16:26 ` Laszlo Ersek
2017-11-22 10:07 ` [PATCH v2 13/14] ArmVirtPkg/ArmVirtMemoryInitPeiLib: move to ArmVirtMemInfoLib Ard Biesheuvel
2017-11-23 16:32 ` Laszlo Ersek
2017-11-22 10:07 ` [PATCH v2 14/14] ArmVirtPkg: remove ArmPlatformLib implementations Ard Biesheuvel
2017-11-23 16:56 ` Ard Biesheuvel [this message]
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='CAKv+Gu-MPM=x9nTVic24aEiBY_rqRv4fE8w=ukDDJBCgJiSqBA@mail.gmail.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