[edk2-devel] [PATCH v3 21/26] StandaloneMmPkg: Fix ECC error 4002 in StandaloneMmCpu
Sami Mujawar
sami.mujawar at arm.com
Mon Jan 4 13:22:08 UTC 2021
Bugzilla: 3150 (https://bugzilla.tianocore.org/show_bug.cgi?id=3150)
Fix the ECC reported error "[4002] Function header doesn't exist".
Signed-off-by: Sami Mujawar <sami.mujawar at arm.com>
Acked-by: Jiewen Yao <Jiewen.yao at intel.com>
---
Notes:
v3:
- No code change. Added bugzilla ID and resending patch [SAMI]
with v3 series.
v2:
- No code change. Resending patch with v2 series. [SAMI]
StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c | 9 ++++--
StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c | 23 ++++++++++++++-
StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h | 31 +++++++++++++++++++-
3 files changed, 58 insertions(+), 5 deletions(-)
diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c
index 006f95989124ee0151e3cdf42b4dd4a5be80a6aa..7fe912b0c9411819e81c668ffd92a70c2cac84bb 100644
--- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c
+++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c
@@ -196,10 +196,13 @@ MmFoundationEntryRegister (
This function is the main entry point for an MM handler dispatch
or communicate-based callback.
- @param DispatchHandle The unique handle assigned to this handler by MmiHandlerRegister().
- @param Context Points to an optional handler context which was specified when the handler was registered.
+ @param DispatchHandle The unique handle assigned to this handler by
+ MmiHandlerRegister().
+ @param Context Points to an optional handler context which was
+ specified when the handler was registered.
@param CommBuffer A pointer to a collection of data in memory that will
- be conveyed from a non-MM environment into an MM environment.
+ be conveyed from a non-MM environment into an
+ MM environment.
@param CommBufferSize The size of the CommBuffer.
@return Status Code
diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c
index 7c004c8013460bb7f1690351aa64eeaa9eab91dc..11c97fd8b62d6c49743422d5e0e2da46ac64327e 100644
--- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c
+++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c
@@ -44,6 +44,16 @@ EFI_MM_SYSTEM_TABLE *mMmst = NULL;
//
STATIC EFI_HANDLE mMmCpuHandle = NULL;
+/** Returns the HOB data for the matching HOB GUID.
+
+ @param [in] HobList Pointer to the HOB list.
+ @param [in] HobGuid The GUID for the HOB.
+ @param [out] HobData Pointer to the HOB data.
+
+ @retval EFI_SUCCESS The function completed successfully.
+ @retval EFI_INVALID_PARAMETER Invalid parameter.
+ @retval EFI_NOT_FOUND Could not find HOB with matching GUID.
+**/
EFI_STATUS
GetGuidedHobData (
IN VOID *HobList,
@@ -70,9 +80,20 @@ GetGuidedHobData (
return EFI_SUCCESS;
}
+/** Entry point for the Standalone MM CPU driver.
+
+ @param [in] ImageHandle Unused. Not actual image handle.
+ @param [in] SystemTable Pointer to MM System table.
+
+ @retval EFI_SUCCESS The function completed successfully.
+ @retval EFI_INVALID_PARAMETER Invalid parameter.
+ @retval EFI_OUT_OF_RESOURCES Out of resources.
+ @retval EFI_NOT_FOUND Failed to find the HOB for the CPU
+ driver endpoint descriptor.
+**/
EFI_STATUS
StandaloneMmCpuInitialize (
- IN EFI_HANDLE ImageHandle, // not actual imagehandle
+ IN EFI_HANDLE ImageHandle, // not actual imagehandle
IN EFI_MM_SYSTEM_TABLE *SystemTable // not actual systemtable
)
{
diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h
index 47a020c27b9591436d0559f34e0dcd0e7443aa93..23b60a2c991840a6b422e198f136947399074870 100644
--- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h
+++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h
@@ -2,7 +2,7 @@
Private header with declarations and definitions specific to the MM Standalone
CPU driver
- Copyright (c) 2017 - 2018, ARM Limited. All rights reserved.
+ Copyright (c) 2017 - 2020, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -33,6 +33,19 @@ extern EFI_MMRAM_DESCRIPTOR mNsCommBuffer;
extern MP_INFORMATION_HOB_DATA *mMpInformationHobData;
extern EFI_MM_CONFIGURATION_PROTOCOL mMmConfig;
+/**
+ The PI Standalone MM entry point for the TF-A CPU driver.
+
+ @param [in] EventId The event Id.
+ @param [in] CpuNumber The CPU number.
+ @param [in] NsCommBufferAddr Address of the NS common buffer.
+
+ @retval EFI_SUCCESS Success.
+ @retval EFI_INVALID_PARAMETER A parameter was invalid.
+ @retval EFI_ACCESS_DENIED Access not permitted.
+ @retval EFI_OUT_OF_RESOURCES Out of resources.
+ @retval EFI_UNSUPPORTED Operation not supported.
+**/
EFI_STATUS
PiMmStandaloneArmTfCpuDriverEntry (
IN UINTN EventId,
@@ -40,6 +53,22 @@ PiMmStandaloneArmTfCpuDriverEntry (
IN UINTN NsCommBufferAddr
);
+/**
+ This function is the main entry point for an MM handler dispatch
+ or communicate-based callback.
+
+ @param DispatchHandle The unique handle assigned to this handler by
+ MmiHandlerRegister().
+ @param Context Points to an optional handler context which was
+ specified when the handler was registered.
+ @param CommBuffer A pointer to a collection of data in memory that will
+ be conveyed from a non-MM environment into an
+ MM environment.
+ @param CommBufferSize The size of the CommBuffer.
+
+ @return Status Code
+
+**/
EFI_STATUS
EFIAPI
PiMmCpuTpFwRootMmiHandler (
--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#69578): https://edk2.groups.io/g/devel/message/69578
Mute This Topic: https://groups.io/mt/79423292/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list