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 4383821B00DC1 for ; Tue, 21 Nov 2017 07:42:26 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 467DAC058ECB; Tue, 21 Nov 2017 15:46:41 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-120-145.rdu2.redhat.com [10.10.120.145]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7953417A7C; Tue, 21 Nov 2017 15:46:40 +0000 (UTC) To: Ard Biesheuvel , edk2-devel@lists.01.org Cc: leif.lindholm@linaro.org References: <20171117160913.17292-1-ard.biesheuvel@linaro.org> <20171117160913.17292-6-ard.biesheuvel@linaro.org> From: Laszlo Ersek Message-ID: Date: Tue, 21 Nov 2017 16:46:39 +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: <20171117160913.17292-6-ard.biesheuvel@linaro.org> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Tue, 21 Nov 2017 15:46:41 +0000 (UTC) Subject: Re: [PATCH 05/15] ArmVirtPkg/PrePi: remove dependency on ArmPlatformLib 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: Tue, 21 Nov 2017 15:42:26 -0000 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 11/17/17 17:09, Ard Biesheuvel wrote: > Remove the pointless dependency on ArmPlatformLib: none of the code we > call from it actually does anything useful. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel > --- > ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf | 1 - > ArmVirtPkg/PrePi/PrePi.c | 6 ++---- > ArmVirtPkg/PrePi/PrePi.h | 1 - > 3 files changed, 2 insertions(+), 6 deletions(-) > > diff --git a/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf b/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf > index 5e706934f69f..1d79b1360c22 100755 > --- a/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf > +++ b/ArmVirtPkg/PrePi/ArmVirtPrePiUniCoreRelocatable.inf > @@ -52,7 +52,6 @@ [LibraryClasses] > LzmaDecompressLib > PeCoffGetEntryPointLib > PrePiLib > - ArmPlatformLib > ArmPlatformStackLib > MemoryAllocationLib > HobLib > diff --git a/ArmVirtPkg/PrePi/PrePi.c b/ArmVirtPkg/PrePi/PrePi.c > index c4fa979c43ef..fce4ab9428a5 100755 > --- a/ArmVirtPkg/PrePi/PrePi.c > +++ b/ArmVirtPkg/PrePi/PrePi.c > @@ -13,6 +13,7 @@ > **/ > > #include > +#include > > #include > #include > @@ -85,7 +86,7 @@ PrePiMain ( > BuildCpuHob (PcdGet8 (PcdPrePiCpuMemorySize), PcdGet8 (PcdPrePiCpuIoSize)); > > // Set the Boot Mode > - SetBootMode (ArmPlatformGetBootMode ()); > + SetBootMode (BOOT_WITH_FULL_CONFIGURATION); > > // Initialize Platform HOBs (CpuHob and FvHob) > Status = PlatformPeim (); > @@ -123,9 +124,6 @@ CEntryPoint ( > { > UINT64 StartTimeStamp; > > - // Initialize the platform specific controllers > - ArmPlatformInitialize (MpId); > - > if (PerformanceMeasurementEnabled ()) { > // Initialize the Timer Library to setup the Timer HW controller > TimerConstructor (); > diff --git a/ArmVirtPkg/PrePi/PrePi.h b/ArmVirtPkg/PrePi/PrePi.h > index d3189c0b8a6f..1ba88e0506cb 100644 > --- a/ArmVirtPkg/PrePi/PrePi.h > +++ b/ArmVirtPkg/PrePi/PrePi.h > @@ -25,7 +25,6 @@ > #include > #include > #include > -#include > > #define SerialPrint(txt) SerialPortWrite (txt, AsciiStrLen(txt)+1); > > ArmPlatformGetBootMode() and ArmPlatformInitialize() have identical implementations between the ArmQemuRelocatablePlatformLib and the ArmXenRelocatablePlatformLib instances, so I agree common handling is justified here. The ArmPlatformInitialize() call is not replaced by the function's contents: ASSERT (!FeaturePcdGet (PcdSystemMemoryInitializeInSec)); but I guess this assertion is satisfied simply by the PrePi nature of the platform -- once we stop sharing the code like before, the assert becomes useless (there's no possible mis-build to catch). I think, Reviewed-by: Laszlo Ersek