[edk2-devel] [PATCH v2 2/4] MdePkg: Fix OUT parameters marked as IN OUT

Zhiguang Liu zhiguang.liu at intel.com
Mon May 11 06:12:42 UTC 2020


Reviewed-by: Zhiguang Liu <zhiguang.liu at intel.com>


> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of Oleksiy
> Yakovlev
> Sent: Friday, May 8, 2020 3:35 AM
> To: devel at edk2.groups.io
> Cc: Gao, Liming <liming.gao at intel.com>; Kinney, Michael D
> <michael.d.kinney at intel.com>; Felixp at ami.com; oleksiyy at ami.com
> Subject: [edk2-devel] [PATCH v2 2/4] MdePkg: Fix OUT parameters marked
> as IN OUT
> 
> Some output parameters throughout the specification were mistakenly
> marked as IN OUT.
> "IN OUT" replaced with "OUT" in the following interfaces
> 
> EFI_BOOT_SERVICES.GetMemoryMap():MemoryMap
> EFI_BOOT_SERVICES.LocateHandleBuffer():NoHandles
> EFI_SIMPLE_POINTER_PROTOCOL.GetState():State
> EFI_ABSOLUTE_POINTER_PROTOCOL.GetState():State
> EFI_EDID_OVERRIDE_PROTOCOL.GetEdid():EdidSize and Edid
> EFI_ATA_PASS_THRU_PROTOCOL.BuildDevicePath():DevicePath
> EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL.BuildDevicePath():DevicePath
> EFI_SD_MMC_PASS_THRU_PROTOCOL.BuildDevicePath():DevicePath
> EFI_EXT_SCSI_PASS_THRU_PROTOCOL.BuildDevicePath():DevicePath
> EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage():Image
> (UEFI 2.8 errata a, mantis 2035)
> 
> Signed-off-by: Oleksiy Yakovlev <oleksiyy at ami.com>
> ---
>  MdePkg/Include/Protocol/AbsolutePointer.h    | 2 +-
>  MdePkg/Include/Protocol/AtaPassThru.h        | 4 ++--
>  MdePkg/Include/Protocol/EdidOverride.h       | 4 ++--
>  MdePkg/Include/Protocol/FirmwareManagement.h | 4 ++--
> MdePkg/Include/Protocol/NvmExpressPassthru.h | 4 ++--
>  MdePkg/Include/Protocol/ScsiPassThruExt.h    | 2 +-
>  MdePkg/Include/Protocol/SdMmcPassThru.h      | 4 ++--
>  MdePkg/Include/Protocol/SimplePointer.h      | 2 +-
>  MdePkg/Include/Uefi/UefiSpec.h               | 8 ++++----
>  9 files changed, 17 insertions(+), 17 deletions(-)
> 
> diff --git a/MdePkg/Include/Protocol/AbsolutePointer.h
> b/MdePkg/Include/Protocol/AbsolutePointer.h
> index 77d34ae..d59ac97 100644
> --- a/MdePkg/Include/Protocol/AbsolutePointer.h
> +++ b/MdePkg/Include/Protocol/AbsolutePointer.h
> @@ -169,7 +169,7 @@ typedef
>  EFI_STATUS
>  (EFIAPI *EFI_ABSOLUTE_POINTER_GET_STATE)(
>    IN      EFI_ABSOLUTE_POINTER_PROTOCOL  *This,
> -  IN OUT  EFI_ABSOLUTE_POINTER_STATE     *State
> +  OUT  EFI_ABSOLUTE_POINTER_STATE        *State
>  );
> 
> 
> diff --git a/MdePkg/Include/Protocol/AtaPassThru.h
> b/MdePkg/Include/Protocol/AtaPassThru.h
> index ce6f57f..888dff2 100644
> --- a/MdePkg/Include/Protocol/AtaPassThru.h
> +++ b/MdePkg/Include/Protocol/AtaPassThru.h
> @@ -315,7 +315,7 @@ EFI_STATUS
>    @param[in]     PortMultiplierPort  The port multiplier port number of the
> ATA device for which a
>                                       device path node is to be allocated and built. If there is no
>                                       port multiplier, then specify 0xFFFF.
> -  @param[in,out] DevicePath          A pointer to a single device path node that
> describes the ATA
> +  @param[out]    DevicePath          A pointer to a single device path node that
> describes the ATA
>                                       device specified by Port and PortMultiplierPort. This
> function
>                                       is responsible for allocating the buffer DevicePath with the
>                                       boot service AllocatePool(). It is the caller's responsibility
> @@ -334,7 +334,7 @@ EFI_STATUS
>    IN     EFI_ATA_PASS_THRU_PROTOCOL *This,
>    IN     UINT16                     Port,
>    IN     UINT16                     PortMultiplierPort,
> -  IN OUT EFI_DEVICE_PATH_PROTOCOL   **DevicePath
> +  OUT    EFI_DEVICE_PATH_PROTOCOL   **DevicePath
>    );
> 
>  /**
> diff --git a/MdePkg/Include/Protocol/EdidOverride.h
> b/MdePkg/Include/Protocol/EdidOverride.h
> index 9036f8b..709ee48 100644
> --- a/MdePkg/Include/Protocol/EdidOverride.h
> +++ b/MdePkg/Include/Protocol/EdidOverride.h
> @@ -44,8 +44,8 @@ EFI_STATUS
>    IN  EFI_EDID_OVERRIDE_PROTOCOL          *This,
>    IN  EFI_HANDLE                          *ChildHandle,
>    OUT UINT32                              *Attributes,
> -  IN OUT UINTN                            *EdidSize,
> -  IN OUT UINT8                            **Edid
> +  OUT UINTN                               *EdidSize,
> +  OUT UINT8                               **Edid
>    );
> 
>  ///
> diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h
> b/MdePkg/Include/Protocol/FirmwareManagement.h
> index 297bb5f..b501261 100644
> --- a/MdePkg/Include/Protocol/FirmwareManagement.h
> +++ b/MdePkg/Include/Protocol/FirmwareManagement.h
> @@ -345,7 +345,7 @@ EFI_STATUS
>    @param[in]      This           A pointer to the
> EFI_FIRMWARE_MANAGEMENT_PROTOCOL instance.
>    @param[in]      ImageIndex     A unique number identifying the firmware
> image(s) within the device.
>                                   The number is between 1 and DescriptorCount.
> -  @param[in, out] Image          Points to the buffer where the current image is
> copied to.
> +  @param[out]     Image          Points to the buffer where the current image is
> copied to.
>    @param[in, out] ImageSize      On entry, points to the size of the buffer
> pointed to by Image, in bytes.
>                                   On return, points to the length of the image, in bytes.
> 
> @@ -364,7 +364,7 @@ EFI_STATUS
>  (EFIAPI *EFI_FIRMWARE_MANAGEMENT_PROTOCOL_GET_IMAGE)(
>    IN  EFI_FIRMWARE_MANAGEMENT_PROTOCOL  *This,
>    IN  UINT8                             ImageIndex,
> -  IN  OUT  VOID                         *Image,
> +  OUT  VOID                             *Image,
>    IN  OUT  UINTN                        *ImageSize
>    );
> 
> diff --git a/MdePkg/Include/Protocol/NvmExpressPassthru.h
> b/MdePkg/Include/Protocol/NvmExpressPassthru.h
> index 7420924..870b9b5 100644
> --- a/MdePkg/Include/Protocol/NvmExpressPassthru.h
> +++ b/MdePkg/Include/Protocol/NvmExpressPassthru.h
> @@ -214,7 +214,7 @@ EFI_STATUS
>    @param[in]     NamespaceId         The NVM Express namespace ID  for which
> a device path node is to be
>                                       allocated and built. Caller must set the NamespaceId to
> zero if the
>                                       device path node will contain a valid UUID.
> -  @param[in,out] DevicePath          A pointer to a single device path node that
> describes the NVM Express
> +  @param[out]    DevicePath          A pointer to a single device path node that
> describes the NVM Express
>                                       namespace specified by NamespaceId. This function is
> responsible for
>                                       allocating the buffer DevicePath with the boot service
> AllocatePool().
>                                       It is the caller's responsibility to free DevicePath when the
> caller @@ -231,7 +231,7 @@ EFI_STATUS  (EFIAPI
> *EFI_NVM_EXPRESS_PASS_THRU_BUILD_DEVICE_PATH)(
>    IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL          *This,
>    IN     UINT32                                      NamespaceId,
> -  IN OUT EFI_DEVICE_PATH_PROTOCOL                    **DevicePath
> +  OUT    EFI_DEVICE_PATH_PROTOCOL                    **DevicePath
>    );
> 
>  /**
> diff --git a/MdePkg/Include/Protocol/ScsiPassThruExt.h
> b/MdePkg/Include/Protocol/ScsiPassThruExt.h
> index c83da26..994fbba 100644
> --- a/MdePkg/Include/Protocol/ScsiPassThruExt.h
> +++ b/MdePkg/Include/Protocol/ScsiPassThruExt.h
> @@ -259,7 +259,7 @@ EFI_STATUS
>    IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL               *This,
>    IN UINT8                                         *Target,
>    IN UINT64                                        Lun,
> -  IN OUT EFI_DEVICE_PATH_PROTOCOL                  **DevicePath
> +  OUT EFI_DEVICE_PATH_PROTOCOL                     **DevicePath
>    );
> 
>  /**
> diff --git a/MdePkg/Include/Protocol/SdMmcPassThru.h
> b/MdePkg/Include/Protocol/SdMmcPassThru.h
> index 3db6a3e..ac5470b 100644
> --- a/MdePkg/Include/Protocol/SdMmcPassThru.h
> +++ b/MdePkg/Include/Protocol/SdMmcPassThru.h
> @@ -164,7 +164,7 @@ EFI_STATUS
>    @param[in]     This           A pointer to the
> EFI_SD_MMMC_PASS_THRU_PROTOCOL instance.
>    @param[in]     Slot           Specifies the slot number of the SD card for which a
> device
>                                  path node is to be allocated and built.
> -  @param[in,out] DevicePath     A pointer to a single device path node that
> describes the SD
> +  @param[out]    DevicePath     A pointer to a single device path node that
> describes the SD
>                                  card specified by Slot. This function is responsible for
>                                  allocating the buffer DevicePath with the boot service
>                                  AllocatePool(). It is the caller's responsibility to free @@ -
> 182,7 +182,7 @@ EFI_STATUS  (EFIAPI
> *EFI_SD_MMC_PASS_THRU_BUILD_DEVICE_PATH) (
>    IN     EFI_SD_MMC_PASS_THRU_PROTOCOL       *This,
>    IN     UINT8                               Slot,
> -  IN OUT EFI_DEVICE_PATH_PROTOCOL            **DevicePath
> +  OUT    EFI_DEVICE_PATH_PROTOCOL            **DevicePath
>  );
> 
>  /**
> diff --git a/MdePkg/Include/Protocol/SimplePointer.h
> b/MdePkg/Include/Protocol/SimplePointer.h
> index 2f5a940..c631414 100644
> --- a/MdePkg/Include/Protocol/SimplePointer.h
> +++ b/MdePkg/Include/Protocol/SimplePointer.h
> @@ -109,7 +109,7 @@ typedef
>  EFI_STATUS
>  (EFIAPI *EFI_SIMPLE_POINTER_GET_STATE)(
>    IN EFI_SIMPLE_POINTER_PROTOCOL          *This,
> -  IN OUT EFI_SIMPLE_POINTER_STATE         *State
> +  OUT EFI_SIMPLE_POINTER_STATE            *State
>    );
> 
>  ///
> diff --git a/MdePkg/Include/Uefi/UefiSpec.h
> b/MdePkg/Include/Uefi/UefiSpec.h index 444aa35..29a033c 100644
> --- a/MdePkg/Include/Uefi/UefiSpec.h
> +++ b/MdePkg/Include/Uefi/UefiSpec.h
> @@ -209,7 +209,7 @@ EFI_STATUS
>                                           On output, it is the size of the buffer returned by the
> firmware if
>                                           the buffer was large enough, or the size of the buffer
> needed to contain
>                                           the map if the buffer was too small.
> -  @param[in, out]  MemoryMap             A pointer to the buffer in which
> firmware places the current memory
> +  @param[out]      MemoryMap             A pointer to the buffer in which
> firmware places the current memory
>                                           map.
>    @param[out]      MapKey                A pointer to the location in which firmware
> returns the key for the
>                                           current memory map.
> @@ -230,7 +230,7 @@ typedef
>  EFI_STATUS
>  (EFIAPI *EFI_GET_MEMORY_MAP)(
>    IN OUT UINTN                       *MemoryMapSize,
> -  IN OUT EFI_MEMORY_DESCRIPTOR       *MemoryMap,
> +  OUT    EFI_MEMORY_DESCRIPTOR       *MemoryMap,
>    OUT    UINTN                       *MapKey,
>    OUT    UINTN                       *DescriptorSize,
>    OUT    UINT32                      *DescriptorVersion
> @@ -1554,7 +1554,7 @@ EFI_STATUS
>    @param[in]       Protocol     Provides the protocol to search by.
>                                  This parameter is only valid for a SearchType of ByProtocol.
>    @param[in]       SearchKey    Supplies the search key depending on the
> SearchType.
> -  @param[in, out]  NoHandles    The number of handles returned in Buffer.
> +  @param[out]      NoHandles    The number of handles returned in Buffer.
>    @param[out]      Buffer       A pointer to the buffer to return the requested
> array of handles that
>                                  support Protocol.
> 
> @@ -1572,7 +1572,7 @@ EFI_STATUS
>    IN     EFI_LOCATE_SEARCH_TYPE       SearchType,
>    IN     EFI_GUID                     *Protocol,      OPTIONAL
>    IN     VOID                         *SearchKey,     OPTIONAL
> -  IN OUT UINTN                        *NoHandles,
> +  OUT    UINTN                        *NoHandles,
>    OUT    EFI_HANDLE                   **Buffer
>    );
> 
> --
> 2.9.0.windows.1
> 
> 
> Please consider the environment before printing this email.
> 
> The information contained in this message may be confidential and
> proprietary to American Megatrends (AMI).  This communication is intended
> to be read only by the individual or entity to whom it is addressed or by their
> designee. If the reader of this message is not the intended recipient, you are
> on notice that any distribution of this message, in any form, is strictly
> prohibited.  Please promptly notify the sender by reply e-mail or by
> telephone at 770-246-8600, and then delete or destroy all copies of the
> transmission.
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#59045): https://edk2.groups.io/g/devel/message/59045
Mute This Topic: https://groups.io/mt/74058372/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