public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Sami Mujawar" <sami.mujawar@arm.com>
To: Michael Kubacki <mikuback@linux.microsoft.com>, devel@edk2.groups.io
Cc: ardb+tianocore@kernel.org, nathaniel.l.desimone@intel.com,
	ankit.sinha@intel.com, npham@amperecomputing.com,
	loc.ho@amperecomputing.com, jose.marinho@arm.com,
	Samer.El-Haj-Mahmoud@arm.com, Matteo.Carlini@arm.com,
	Akanksha.Jain2@arm.com, Ben.Adderson@arm.com, nd@arm.com
Subject: Re: [PATCH v1 0/5] Add support to build PRM for AARCH64 using GCC
Date: Mon, 8 Aug 2022 11:35:10 +0100	[thread overview]
Message-ID: <569735e2-394f-7be0-1530-40f8a2caacf3@arm.com> (raw)
In-Reply-To: <d6ae9ad3-2291-d3a8-b650-65ab45ecf5ef@linux.microsoft.com>

Hi Michael,

Please find my response inline marked [SAMI].

Regards,

Sami Mujawar

On 04/08/2022 05:09 am, Michael Kubacki wrote:
> For the series: Reviewed-by: Michael Kubacki 
> <michael.kubacki@microsoft.com>
>
> The patch formatting seems a little strange:
>
> 1. The patches don't have "Cc" lines.
>
[SAMI] I have not been following the convention to add Cc lines to the 
patches. However, I will start from the next patch series.
> 2. What is this GUID message at the bottom of each patch?
>
>    'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
[SAMI] I have added this so that I can easily search my patches. It does 
not affect the patch though.
>
> By the way, I tested the AARCH64 PRM build with sample modules on 
> VS2019 a while back, so I see that you mentioned only testing GCC 
> (thanks for helping get the functions in the export table there) but 
> it should work in VS as well.

[SAMI] I have tried building PrmPkg with VS2019 and found that the 
AARCH64 builds do not work.

         "C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Professional\VC\Tools\MSVC\14.28.29910\bin\Hostx86\arm64\armasm64.exe" 
/Fow:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.obj 
/nologo /g 
/Iw:\edk2-exports\edk2\MdePkg\Library\BaseMemoryLibOptDxe\AArch64 
/Iw:\edk2-exports\edk2\MdePkg\Library\BaseMemoryLibOptDxe\Arm 
/Iw:\edk2-exports\edk2\MdePkg\Library\BaseMemoryLibOptDxe\AArch64 
/Iw:\edk2-exports\edk2\MdePkg\Library\BaseMemoryLibOptDxe 
/Iw:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\DEBUG 
/Iw:\edk2-exports\edk2\MdePkg /Iw:\edk2-exports\edk2\MdePkg\Include 
/Iw:\edk2-exports\edk2\MdePkg\Test\UnitTest\Include 
/Iw:\edk2-exports\edk2\MdePkg\Include\AArch64 
w:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.iiii
w:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.iiii(7) 
: error A2034: unknown opcode: .
     .text
w:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.iiii(8) 
: error A2034: unknown opcode: .
     .align  5
w:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.iiii(9) 
: error A2034: unknown opcode: InternalMemCompareGuid
ASM_GLOBAL InternalMemCompareGuid
w:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.iiii(13) 
: error A2173: syntax error in expression
     cbz     x1, 0f
w:\edk2-exports\Build\Prm\DEBUG_VS2019\AARCH64\MdePkg\Library\BaseMemoryLibOptDxe\BaseMemoryLibOptDxe\OUTPUT\AArch64\CompareGuid.iiii(19) 
: warning A4045: missing END directive
     ret
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Professional\VC\Tools\MSVC\14.28.29910\bin\Hostx86\arm64\armasm64.exe"' 
: return code '0x1'
Stop.

Can you please let me know if this is a configuration/environment issue 
or the AARCH64 assembly files need to be ported for Visual Studio?

I have tried building other Arm packages and though the assembler files 
need porting, which I believe has been done as part of ProjectMu 
(https://github.com/microsoft/mu_silicon_arm_tiano).

It would be good to have AARCH64 builds of edk2 with Visual Studio as 
this would allow to use the VS static analysis tool.

Can you let me know if you have any plans to enable this support in 
Tianocore\edk2 project, please?

[/SAMI]

> Regards,
> Michael
>
> On 8/3/2022 10:35 AM, Sami Mujawar wrote:
>> This patch series adds support to build PRM for AARCH64 using GCC.
>>
>> The changes can be seen at:
>> https://github.com/samimujawar/edk2/tree/2238_aarch64_prm_support_v1
>>
>> Jose Marinho (5):
>>    Basetools/GenFw: Allow AARCH64 builds to use the --prm flag
>>    PrmPkg: Enable external visibility on PRM symbols
>>    PrmPkg: Build Prm Samples with GCC for AARCH64
>>    PrmPkg: Support AArch64 builds using GCC
>>    PrmPkg: Add details on AArch64 build to the Readme.
>>
>> BaseTools/Source/C/GenFw/Elf64Convert.c |  6 ++---
>> PrmPkg/Include/Prm.h |  3 +++
>> PrmPkg/PrmPkg.ci.yaml |  1 +
>> PrmPkg/PrmPkg.dsc | 24 +++++++++++++++++---
>> PrmPkg/Readme.md | 11 +++++++++
>> PrmPkg/Samples/PrmSampleAcpiParameterBufferModule/PrmSampleAcpiParameterBufferModule.inf 
>> |  4 ++++
>> PrmPkg/Samples/PrmSampleContextBufferModule/PrmSampleContextBufferModule.inf 
>> |  4 ++++
>>   7 files changed, 47 insertions(+), 6 deletions(-)
>>

  reply	other threads:[~2022-08-08 10:35 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-03 14:35 [PATCH v1 0/5] Add support to build PRM for AARCH64 using GCC Sami Mujawar
2022-08-03 14:35 ` [PATCH v1 1/5] Basetools/GenFw: Allow AARCH64 builds to use the --prm flag Sami Mujawar
2022-08-03 14:35 ` [PATCH v1 2/5] PrmPkg: Enable external visibility on PRM symbols Sami Mujawar
2022-08-03 14:35 ` [PATCH v1 3/5] PrmPkg: Build Prm Samples with GCC for AARCH64 Sami Mujawar
2022-08-03 14:35 ` [PATCH v1 4/5] PrmPkg: Support AArch64 builds using GCC Sami Mujawar
2022-08-03 14:35 ` [PATCH v1 5/5] PrmPkg: Add details on AArch64 build to the Readme Sami Mujawar
2022-08-04  4:09 ` [PATCH v1 0/5] Add support to build PRM for AARCH64 using GCC Michael Kubacki
2022-08-08 10:35   ` Sami Mujawar [this message]
2022-08-08 22:47     ` [edk2-devel] " Michael Kubacki
2022-08-04 10:32 ` Ard Biesheuvel
2022-08-05 15:08 ` Michael Kubacki
2022-08-08 10:34   ` Sami Mujawar

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=569735e2-394f-7be0-1530-40f8a2caacf3@arm.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