123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- /** @file
- Private header with declarations and definitions specific to the MM Standalone
- CPU driver
- Copyright (c) 2017 - 2021, Arm Limited. All rights reserved.
- SPDX-License-Identifier: BSD-2-Clause-Patent
- **/
- #ifndef _ARM_TF_CPU_DRIVER_H_
- #define _ARM_TF_CPU_DRIVER_H_
- #include <Protocol/MmCommunication2.h>
- #include <Protocol/MmConfiguration.h>
- #include <Protocol/MmCpu.h>
- #include <Guid/MpInformation.h>
- //
- // CPU driver initialization specific declarations
- //
- extern EFI_MM_SYSTEM_TABLE *mMmst;
- //
- // CPU State Save protocol specific declarations
- //
- extern EFI_MM_CPU_PROTOCOL mMmCpuState;
- //
- // MM event handling specific declarations
- //
- extern EFI_MM_COMMUNICATE_HEADER **PerCpuGuidedEventContext;
- 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,
- IN UINTN CpuNumber,
- 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 (
- IN EFI_HANDLE DispatchHandle,
- IN CONST VOID *Context, OPTIONAL
- IN OUT VOID *CommBuffer, OPTIONAL
- IN OUT UINTN *CommBufferSize OPTIONAL
- );
- #endif
|