LEG UEFI does not support 64-bit addressing modes for AARCH64 (only 32-bit UINT32 Sysytem Memory)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro UEFI |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
When modifying the top level DSC file for building to a Fast Model that maps DRAM above a 32-bit addressing mode, the UEFI fails to build because of a SystemMemory UINT32 issue; see
~/ArmPkg/ArmPkg.dec gArmTokenSpaceG
This is issue is throughout the code and needs to be vetted for AARCH64 based memory access outside of the 32-bit boundary.
The operations that actually access these address variables also seem
to all use PcdGet32 and explicit casts to (UINT32), which would make
things fall over again if we only changed the description.
And looking around more, there seems to be more cleanup work required
in the area of code being shared between AArch32 and AArch64.
As an example, PrePi/AArch64/
which contains certain definitions that are not valid in AArch64.
affects: | linaro → linaro-uefi |
Changed in linaro-uefi: | |
status: | New → Confirmed |
This issue is now fixed in the upstream. You can see the committ on the tianocore github mirror here (https:/ /github. com/tianocore/ edk2/commit/ c357fd6a1f79e2d 7b0a1bd01994b8d 33925bfff5)