[edk2-devel] [PATCH v1 02/16] ArmPkg/ArmMmuStandaloneMmLib: Update to match ArmMmuLib

Bret Barkelew posted 16 patches 4 years, 3 months ago
There is a newer version of this series
[edk2-devel] [PATCH v1 02/16] ArmPkg/ArmMmuStandaloneMmLib: Update to match ArmMmuLib
Posted by Bret Barkelew 4 years, 3 months ago
From: Bret Barkelew <brbarkel@microsoft.com>

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3647

Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Signed-off-by: Bret Barkelew <bret.barkelew@microsoft.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 (#83032): https://edk2.groups.io/g/devel/message/83032
Mute This Topic: https://groups.io/mt/86750626/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v1 02/16] ArmPkg/ArmMmuStandaloneMmLib: Update to match ArmMmuLib
Posted by Leif Lindholm 4 years, 3 months ago
On Mon, Nov 01, 2021 at 12:56:34 -0700, brbarkel@microsoft.com wrote:
> From: Bret Barkelew <brbarkel@microsoft.com>
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3647

The reference is good, but please still have a summary in the commit
message.

> 
> Cc: Leif Lindholm <leif@nuviainc.com>
> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
> Cc: Sean Brogan <sean.brogan@microsoft.com>
> Signed-off-by: Bret Barkelew <bret.barkelew@microsoft.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

Although clearly an improvement, this hunk does not form part of the
described change. Can you move it to  1/16?
Indeed, if there are more "properly restrict modules to where they
actually work" changes in the set, I'd rather see them all rolled up
into one patch than sprinkled throughout.

/
    Leif

>    PI_SPECIFICATION_VERSION       = 0x00010032
>  
>  [Sources]
> -- 
> 2.31.1.windows.1
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#83108): https://edk2.groups.io/g/devel/message/83108
Mute This Topic: https://groups.io/mt/86750626/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v1 02/16] ArmPkg/ArmMmuStandaloneMmLib: Update to match ArmMmuLib
Posted by Leif Lindholm 4 years, 3 months ago
On Tue, Nov 02, 2021 at 09:34:27 +0000, Leif Lindholm wrote:
> On Mon, Nov 01, 2021 at 12:56:34 -0700, brbarkel@microsoft.com wrote:
> > From: Bret Barkelew <brbarkel@microsoft.com>
> > 
> > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3647
> 
> The reference is good, but please still have a summary in the commit
> message.
> 
> > 
> > Cc: Leif Lindholm <leif@nuviainc.com>
> > Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
> > Cc: Sean Brogan <sean.brogan@microsoft.com>
> > Signed-off-by: Bret Barkelew <bret.barkelew@microsoft.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
> 
> Although clearly an improvement, this hunk does not form part of the
> described change. Can you move it to  1/16?
> Indeed, if there are more "properly restrict modules to where they
> actually work" changes in the set, I'd rather see them all rolled up
> into one patch than sprinkled throughout.

Or, you know, given 4/16, just don't add the restriction that obscures
that you're changing the library class in the first place...

> 
> /
>     Leif
> 
> >    PI_SPECIFICATION_VERSION       = 0x00010032
> >  
> >  [Sources]
> > -- 
> > 2.31.1.windows.1
> > 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#83110): https://edk2.groups.io/g/devel/message/83110
Mute This Topic: https://groups.io/mt/86750626/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-