Required in some distros, e.g. SliTaz. In that example bootx64.efi is the
kernel plus an extra loader which fetches its params from a text file.
That image has section alignment 0x20, whereas the default (0x7)
PcdImageProtectionPolicy enforces section alignment of EFI_PAGE_SIZE=0x1000
for all images.
In OpenDuet and OpenCore native loader the Pcd is already set to 0x03,
to not enforce this for user images (to allow legacy Apple images) - so
this distro I believe would already load via Duet; but this change is
required for it to load in AUDK OVMF.
The variants provided when MDEPKG_NDEBUG is defined will be optimised
away in RELEASE builds, but by referencing the argument (or argument list,
in the case of DEBUG) avoid unused variable errors from valid debug code,
for example when STATIC variables are used only in DEBUG statements.
This is already worked around by the alternative version
of MDEPKG_NDEBUG DEBUG() for __clang__ which is provided
in MdePkg DebugLib.h, therefore the reason why this flag
was added in EDK-II no longer applies.
The ANSI implementation assumes that initial value should be 0xFFFF and
the result shouldn't be inverted
Fixes: 92288f4 ("MdePkg/BaseLib: Add CRC16-ANSI and CRC32c implementations")
Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com>
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3223
In the current design, memory protection is not available till CpuDxe
is loaded. To resolve this, introduce CpuArchLib to move the
CPU Architectural initialization to DxeCore.
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Vitaly Cheptsov <vit9696@protonmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
The PcdPrePiProduceMemoryTypeInformationHob on ARM breaks Linux efistub
boot. The efistub for arm32 uncompresses Linux kernel into memory ranges
which occupied by DXE-phase drivers which leads to
'permission denied'-error during page write. So as a temporary solution
we use PcdPrePiProduceMemoryTypeInformationHob only for AARCH64
Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com>
This change removes Xcode5ExceptionHandlerAsm and merge it's
functionality into ExceptionHandlerAsm.
Also decreases number of vectors to 32 for:
- 64-bit PeiCpuExceptionHandlerLib
- 32-bit PeiCpuExceptionHandlerLib, SecPeiCpuExceptionHandlerLib
Signed-off-by: Savva Mitrofanov <savvamtr@gmail.com>