diff options
author | Star Zeng <star.zeng@intel.com> | 2017-12-05 11:23:18 +0800 |
---|---|---|
committer | Star Zeng <star.zeng@intel.com> | 2017-12-07 17:40:21 +0800 |
commit | c53190e910763fabdc7f30cc2fdb51044aa5372f (patch) | |
tree | d8bae0af193e624076a44ef5820f662ad32eaf52 /MdePkg | |
parent | fdd8463d7bd3cbc8a426a80ea80a136341f2b957 (diff) | |
download | edk2-c53190e910763fabdc7f30cc2fdb51044aa5372f.tar.gz edk2-c53190e910763fabdc7f30cc2fdb51044aa5372f.tar.bz2 edk2-c53190e910763fabdc7f30cc2fdb51044aa5372f.zip |
MdePkg MmCommunication.h: Follow PI spec to update EFI_MM_COMMUNICATE
Follow PI spec (>= 1.5) to add new return status code description
and make CommSize OPTIONAL.
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
Diffstat (limited to 'MdePkg')
-rw-r--r-- | MdePkg/Include/Protocol/MmCommunication.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/MdePkg/Include/Protocol/MmCommunication.h b/MdePkg/Include/Protocol/MmCommunication.h index 16450e3445..774686ba3e 100644 --- a/MdePkg/Include/Protocol/MmCommunication.h +++ b/MdePkg/Include/Protocol/MmCommunication.h @@ -55,18 +55,28 @@ typedef struct _EFI_MM_COMMUNICATION_PROTOCOL EFI_MM_COMMUNICATION_PROTOCOL; @param[in] This The EFI_MM_COMMUNICATION_PROTOCOL instance.
@param[in] CommBuffer A pointer to the buffer to convey into MMRAM.
- @param[in] CommSize The size of the data buffer being passed in.On exit, the size of data
+ @param[in] CommSize The size of the data buffer being passed in. On exit, the size of data
being returned. Zero if the handler does not wish to reply with any data.
+ This parameter is optional and may be NULL.
@retval EFI_SUCCESS The message was successfully posted.
@retval EFI_INVALID_PARAMETER The CommBuffer was NULL.
+ @retval EFI_BAD_BUFFER_SIZE The buffer is too large for the MM implementation.
+ If this error is returned, the MessageLength field
+ in the CommBuffer header or the integer pointed by
+ CommSize, are updated to reflect the maximum payload
+ size the implementation can accommodate.
+ @retval EFI_ACCESS_DENIED The CommunicateBuffer parameter or CommSize parameter,
+ if not omitted, are in address range that cannot be
+ accessed by the MM environment.
+
**/
typedef
EFI_STATUS
(EFIAPI *EFI_MM_COMMUNICATE)(
IN CONST EFI_MM_COMMUNICATION_PROTOCOL *This,
IN OUT VOID *CommBuffer,
- IN OUT UINTN *CommSize
+ IN OUT UINTN *CommSize OPTIONAL
);
///
|