| ## @file | |
| # EFI Memory Attribute Protocol state manager | |
| # | |
| # This driver allows users to disable the EFI Memory Attribute protocol | |
| # through an HII setup option, in order to work around a broken version | |
| # of rhboot's shim used in some distros (e.g. CentOS Stream 9) which | |
| # incorrectly invokes the protocol and results in a Synchronous Exception. | |
| # | |
| # It is only applicable to ARM64 and there isn't any other technical | |
| # reason for disabling this security feature. | |
| # | |
| # See: | |
| # - https://github.com/microsoft/mu_silicon_arm_tiano/issues/124 | |
| # - https://edk2.groups.io/g/devel/topic/99631663 | |
| # - https://github.com/tianocore/edk2/pull/5840 | |
| # | |
| # Copyright (c) 2023-2024, Mario Bălănică <mariobalanica02@gmail.com> | |
| # | |
| # SPDX-License-Identifier: BSD-2-Clause-Patent | |
| # | |
| ## | |
| [Defines] | |
| INF_VERSION = 0x0001001B | |
| BASE_NAME = MemoryAttributeManagerDxe | |
| FILE_GUID = 5319346b-66ad-433a-9a91-f7fc286bc9a1 | |
| MODULE_TYPE = DXE_DRIVER | |
| VERSION_STRING = 1.0 | |
| ENTRY_POINT = MemoryAttributeManagerInitialize | |
| [Sources] | |
| MemoryAttributeManagerDxe.c | |
| MemoryAttributeManagerDxe.h | |
| MemoryAttributeManagerDxeHii.uni | |
| MemoryAttributeManagerDxeHii.vfr | |
| [Packages] | |
| EmbeddedPkg/EmbeddedPkg.dec | |
| MdePkg/MdePkg.dec | |
| MdeModulePkg/MdeModulePkg.dec | |
| [LibraryClasses] | |
| DebugLib | |
| DevicePathLib | |
| HiiLib | |
| UefiBootServicesTableLib | |
| UefiRuntimeServicesTableLib | |
| UefiDriverEntryPoint | |
| [Guids] | |
| gMemoryAttributeManagerFormSetGuid | |
| [Protocols] | |
| gEfiMemoryAttributeProtocolGuid | |
| [Pcd] | |
| gEmbeddedTokenSpaceGuid.PcdMemoryAttributeEnabledDefault | |
| [Depex] | |
| gEfiVariableArchProtocolGuid AND | |
| gEfiVariableWriteArchProtocolGuid AND | |
| gEfiMemoryAttributeProtocolGuid |