On Tue, Nov 02, 2021 at 13:17:34 -0700, brbar...@microsoft.com wrote:
> From: Bret Barkelew <brbar...@microsoft.com>
> 
> Drop switch from the custom "StandaloneMmMmuLib" class to the
> more generic "ArmMmuLib" class and add the missing functions
> to fulfill that interface.
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3647
> 
> Cc: Leif Lindholm <l...@nuviainc.com>
> Cc: Ard Biesheuvel <ardb+tianoc...@kernel.org>
> Cc: Sean Brogan <sean.bro...@microsoft.com>
> Signed-off-by: Bret Barkelew <bret.barke...@microsoft.com>

Reviewed-by: Leif Lindholm <l...@nuviainc.com>

> ---
>  ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.c   | 37 
> ++++++++++++++++++++
>  ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf |  2 +-
>  2 files changed, 38 insertions(+), 1 deletion(-)
> 
> diff --git a/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.c 
> b/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.c
> index 20f873e6802c..42216bf40ac7 100644
> --- a/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.c
> +++ b/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.c
> @@ -325,3 +325,40 @@ ArmClearMemoryRegionReadOnly (
>    }
>    return Status;
>  }
> +
> +EFI_STATUS
> +EFIAPI
> +ArmConfigureMmu (
> +  IN  ARM_MEMORY_REGION_DESCRIPTOR  *MemoryTable,
> +  OUT VOID                          **TranslationTableBase OPTIONAL,
> +  OUT UINTN                         *TranslationTableSize  OPTIONAL
> +  )
> +{
> +  DEBUG ((DEBUG_ERROR, "%a() interface not implemented!\n", __FUNCTION__));
> +  ASSERT (FALSE);
> +  return EFI_UNSUPPORTED;
> +}
> +
> +VOID
> +EFIAPI
> +ArmReplaceLiveTranslationEntry (
> +  IN  UINT64  *Entry,
> +  IN  UINT64  Value,
> +  IN  UINT64  RegionStart
> +  )
> +{
> +  DEBUG ((DEBUG_ERROR, "%a() interface not implemented!\n", __FUNCTION__));
> +  ASSERT (FALSE);
> +}
> +
> +EFI_STATUS
> +ArmSetMemoryAttributes (
> +  IN EFI_PHYSICAL_ADDRESS      BaseAddress,
> +  IN UINT64                    Length,
> +  IN UINT64                    Attributes
> +  )
> +{
> +  DEBUG ((DEBUG_ERROR, "%a() interface not implemented!\n", __FUNCTION__));
> +  ASSERT (FALSE);
> +  return EFI_UNSUPPORTED;
> +}
> diff --git a/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf 
> b/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
> index ff20e5898051..d34086853d32 100644
> --- a/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
> +++ b/ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
> @@ -13,7 +13,7 @@ [Defines]
>    FILE_GUID                      = 44a741c2-655f-41fc-b066-179f5a9aa78a
>    MODULE_TYPE                    = MM_CORE_STANDALONE
>    VERSION_STRING                 = 1.0
> -  LIBRARY_CLASS                  = StandaloneMmMmuLib
> +  LIBRARY_CLASS                  = ArmMmuLib | MM_CORE_STANDALONE 
> MM_STANDALONE
>    PI_SPECIFICATION_VERSION       = 0x00010032
>  
>  [Sources]
> -- 
> 2.31.1.windows.1
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#83330): https://edk2.groups.io/g/devel/message/83330
Mute This Topic: https://groups.io/mt/86775988/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to