From: "Ard Biesheuvel" <ard.biesheuvel@linaro.org>
To: Laszlo Ersek <lersek@redhat.com>
Cc: "Yao, Jiewen" <jiewen.yao@intel.com>,
edk2-devel-groups-io <devel@edk2.groups.io>,
Achin Gupta <achin.gupta@arm.com>
Subject: Re: [PATCH] StandaloneMmPkg: make package .DSC file build again
Date: Tue, 17 Sep 2019 09:53:38 +0100 [thread overview]
Message-ID: <CAKv+Gu8xUmF-vjZdBfOA+m5g03UnvPqtaSw0yA3=_2T77JuQeg@mail.gmail.com> (raw)
In-Reply-To: <daa44c69-4229-814f-9dcb-205cd53bb1b1@redhat.com>
On Mon, 16 Sep 2019 at 19:26, Laszlo Ersek <lersek@redhat.com> wrote:
>
> On 09/16/19 17:06, Yao, Jiewen wrote:
> > That is correct.
> >
> > Current trunk only supports ARM system.
> >
> > I have branch to support x86 - https://github.com/jyao1/edk2/tree/StandaloneSmmX86Poc
> > But that is not merged into trunk yet.
>
> In that case, for this patch:
>
> Build-tested-by: Laszlo Ersek <lersek@redhat.com>
>
> (apologies, my prior R-b was a typo; I pressed the wrong hotkey for
> inserting the tag in the email)
>
> I still think the IA32/X64 part should be removed from
> SUPPORTED_ARCHITECTURES (and their addition should be a part of Jiewen's
> topic branch). But, I agree such a cleanup is out of scope for this
> patch; the patch does fix the AARCH64 regression.
>
> Thank you, Ard!
> Laszlo
>
Pushed as 9790f62be1aa..82c1a2120855
Thanks all.
> >> -----Original Message-----
> >> From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> >> Sent: Monday, September 16, 2019 1:18 PM
> >> To: Laszlo Ersek <lersek@redhat.com>
> >> Cc: edk2-devel-groups-io <devel@edk2.groups.io>; Achin Gupta
> >> <achin.gupta@arm.com>; Yao, Jiewen <jiewen.yao@intel.com>
> >> Subject: Re: [PATCH] StandaloneMmPkg: make package .DSC file build again
> >>
> >> On Mon, 16 Sep 2019 at 12:13, Laszlo Ersek <lersek@redhat.com> wrote:
> >>>
> >>> Hi Ard,
> >>>
> >>> On 09/13/19 21:04, Ard Biesheuvel wrote:
> >>>> The StandaloneMmPkg .DSC file went out of sync with the changes
> >>>> applied to the package when I enabled this code on the Synquacer
> >>>> platform in edk2-platforms. So apply the necessary changes to make
> >>>> this package build in isolation.
> >>>>
> >>>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> >>>> ---
> >>>> StandaloneMmPkg/StandaloneMmPkg.dsc | 19 +++++++++++--------
> >>>> 1 file changed, 11 insertions(+), 8 deletions(-)
> >>>>
> >>>> diff --git a/StandaloneMmPkg/StandaloneMmPkg.dsc
> >> b/StandaloneMmPkg/StandaloneMmPkg.dsc
> >>>> index 8c5b9b3a3d47..8a68d397469b 100644
> >>>> --- a/StandaloneMmPkg/StandaloneMmPkg.dsc
> >>>> +++ b/StandaloneMmPkg/StandaloneMmPkg.dsc
> >>>> @@ -39,29 +39,32 @@
> >>>> BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
> >>>> DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
> >>>>
> >> DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDe
> >> bugPrintErrorLevelLib.inf
> >>>> +
> >> ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/P
> >> rePiExtractGuidedSectionLib.inf
> >>>> FvLib|StandaloneMmPkg/Library/FvLib/FvLib.inf
> >>>> -
> >> HobLib|StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmC
> >> oreHobLib.inf
> >>>> +
> >> HobLib|StandaloneMmPkg/Library/StandaloneMmHobLib/StandaloneMmHobLi
> >> b.inf
> >>>> IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
> >>>>
> >> MemLib|StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMe
> >> mLib.inf
> >>>>
> >> MemoryAllocationLib|StandaloneMmPkg/Library/StandaloneMmCoreMemoryAl
> >> locationLib/StandaloneMmCoreMemoryAllocationLib.inf
> >>>> +
> >> MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/Standalo
> >> neMmServicesTableLib.inf
> >>>> PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
> >>>> +
> >> PeCoffExtraActionLib|StandaloneMmPkg/Library/StandaloneMmPeCoffExtraAct
> >> ionLib/StandaloneMmPeCoffExtraActionLib.inf
> >>>> PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
> >>>> PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
> >>>>
> >> ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseRepo
> >> rtStatusCodeLibNull.inf
> >>>> -
> >>>> - #
> >>>> - # Entry point
> >>>> - #
> >>>> -
> >> StandaloneMmDriverEntryPoint|StandaloneMmPkg/Library/StandaloneMmDriv
> >> erEntryPoint/StandaloneMmDriverEntryPoint.inf
> >>>> +
> >> StandaloneMmCoreEntryPoint|StandaloneMmPkg/Library/StandaloneMmCoreE
> >> ntryPoint/StandaloneMmCoreEntryPoint.inf
> >>>> +
> >> StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoin
> >> t/StandaloneMmDriverEntryPoint.inf
> >>>>
> >>>> [LibraryClasses.AARCH64]
> >>>> ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
> >>>>
> >> StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStand
> >> aloneMmLib.inf
> >>>> ArmSvcLib|ArmPkg/Library/ArmSvcLib/ArmSvcLib.inf
> >>>>
> >> CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMa
> >> intenanceLib.inf
> >>>> -
> >> PeCoffExtraActionLib|StandaloneMmPkg/Library/StandaloneMmPeCoffExtraAct
> >> ionLib/StandaloneMmPeCoffExtraActionLib.inf
> >>>>
> >>>> -
> >> StandaloneMmCoreEntryPoint|StandaloneMmPkg/Library/StandaloneMmCoreE
> >> ntryPoint/StandaloneMmCoreEntryPoint.inf
> >>>> + NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
> >>>> + NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
> >>>> +
> >>>> +[LibraryClasses.common.MM_CORE_STANDALONE]
> >>>> +
> >> HobLib|StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmC
> >> oreHobLib.inf
> >>>>
> >>>>
> >> #################################################################
> >> ###############
> >>>> #
> >>>>
> >>>
> >>> With this patch applied on top of 9b5a1c789d39, the DSC builds fine for
> >>> AARCH64.
> >>>
> >>> However, the DSC also advertizes IA32 and X64 in
> >>> "SUPPORTED_ARCHITECTURES", and those builds still fail, with:
> >>>
> >>> StandaloneMmPkg/StandaloneMmPkg.dsc(...): error 4000: Instance of
> >>> library class [CacheMaintenanceLib] is not found
> >>> in [StandaloneMmPkg/Core/StandaloneMmCore.inf] [IA32]
> >>>
> >>> Now, I'm not sure if *this* build breakage is related to the Synquacer
> >>> work you mention in the blurb. If it is, then fixing it would be nice.
> >>> If not, then can we perhaps remove IA32 and X64 from
> >>> SUPPORTED_ARCHITECTURES?
> >>>
> >>> If you end up reposting with IA32/X64 removed from
> >>> SUPPORTED_ARCHITECTURES, then, for that version:
> >>>
> >>> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
> >>>
> >>
> >> Jiewen should correct me if I am wrong, but as far as I know,
> >> StandaloneMmPkg is ARM-only in practice, even if the PI spec is arch
> >> agnostic about it.
>
prev parent reply other threads:[~2019-09-17 8:54 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-13 19:04 [PATCH] StandaloneMmPkg: make package .DSC file build again Ard Biesheuvel
2019-09-13 21:32 ` Yao, Jiewen
2019-09-16 11:13 ` Laszlo Ersek
2019-09-16 11:17 ` Ard Biesheuvel
2019-09-16 15:06 ` Yao, Jiewen
2019-09-16 18:26 ` Laszlo Ersek
2019-09-17 8:53 ` 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+Gu8xUmF-vjZdBfOA+m5g03UnvPqtaSw0yA3=_2T77JuQeg@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