From nobody Mon Feb 9 19:30:25 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+59591+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+59591+1787277+3901457@groups.io ARC-Seal: i=1; a=rsa-sha256; t=1589489556; cv=none; d=zohomail.com; s=zohoarc; b=jf34VMX5AfFf5Sf3icR8g/C5qO+DvzVma9hI3eLbWCAEBrk7vNK2R1VJlj4N7K9GQRJ9fnw11Yqq1oEBYOqAlOHYEEfalsA2lJ+g5vccgqVNDVVX/7s0BGHNCrijT3/HsnCg7rHnRuVMtzZtKsiK+i8q4o8o77SlS4rRok+nSBc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1589489556; h=Content-Type:Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=+uY0rDOAlSlt8H+Y7AaiOZZ6XahiI/vqs04/moopqyc=; b=QsvHqirSAfYnPZ+eCGcTeOFV4J8y0YyLnTIQy5PzI4b813lzNDQ5jD9OwYeHCPrOusoYcEfwyqyw2Mm2w0/f6U1XfvoRSJ+yHPPLoxul/9qLznRhRAy2zE3Z9CKfVMpEtPd1dd9bbhE1J7GwCq48mqvEyse4gr4zw5da2lxFqR0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+59591+1787277+3901457@groups.io Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1589489556027392.8005045705323; Thu, 14 May 2020 13:52:36 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id oBOsYY1788612xVmQFabhIwv; Thu, 14 May 2020 13:52:35 -0700 X-Received: from atlmailgw1.ami.com (atlmailgw1.ami.com []) by mx.groups.io with SMTP id smtpd.web11.809.1589489553710474823 for ; Thu, 14 May 2020 13:52:35 -0700 X-AuditID: ac1060b2-0e1ff700000018d4-ce-5ebdaf9262ab X-Received: from atlms1.us.megatrends.com (atlms1.us.megatrends.com [172.16.96.144]) (using TLS with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client did not present a certificate) by atlmailgw1.ami.com (Symantec Messaging Gateway) with SMTP id 40.77.06356.29FADBE5; Thu, 14 May 2020 16:52:34 -0400 (EDT) X-Received: from Oleksiy77.us.megatrends.com (172.16.97.158) by atlms1.us.megatrends.com (172.16.96.144) with Microsoft SMTP Server id 14.3.468.0; Thu, 14 May 2020 16:51:48 -0400 From: "Oleksiy Yakovlev" To: CC: , , , , , , , Subject: [edk2-devel] [PATCH V7 2/6] MdePkg: Fix OUT parameters marked as IN OUT Date: Thu, 14 May 2020 16:51:41 -0400 Message-ID: <20200514205145.36956-3-oleksiyy@ami.com> In-Reply-To: <20200514205145.36956-1-oleksiyy@ami.com> References: <20200514205145.36956-1-oleksiyy@ami.com> MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrPIsWRmVeSWpSXmKPExsWyRiBhgu6k9XvjDDb26VnMf1tt0T5hNpvF 1Vu/mCzmfZvBarHuo4fFinsb2C06Ov4xObB7bP9+gdFj8Z6XTAFMUQ2MNol5efkliSWpCimp xcm2SgFFmWWJyZVKCpkptkqGSgoFOYnJqbmpeSW2SokFBal5KUp2XAoYwAaoLDNPITUvOT8l My/dVskz2F/XwsLUUtdQyS4kI1UhMy8tvyg3sSQzP08hOT+vBKg6NQUoqpDQzZlx9+IpxoJ9 ERUdO+saGNttuxg5OCQETCSWb9PoYuTiEBLYxSTRffwyG4SzhVGiafkS9i5GTg42AU2JA8em MILYIgJSElMOzGQCsZkFDjNKdHwCiwsLOEucOXKGDcRmEVCVuPGmlRnE5hUwlbh68TRYvYSA hsS0NXfBbE4BM4nZ/48wgRwhBFTzdYISRLmgxMmZT1ggxktIHHzxAmyMkICsRNvx5+wTGPln ISmbhaRsASPTKkahxJKc3MTMnPRyQ73E3Ey95PzcTYyQ2Nu0g7HlovkhRiYOxkOMEhzMSiK8 fut3xwnxpiRWVqUW5ccXleakFh9idAK6fyKzFDco+IDxEW9sYCAlCuMYmpiZmBuZG1qamBsb K4nzTl67Jk5IIB0Yr9mpqQWpRTBDmDg4pRoYb25XOvHkdeP516wnizI+X/phGnix8DSr4b6w 75MPub4+pNdkY3z51SznVb9Y2xwZ7TXen5z7arOkttDTKy6F1rEMm3Y+TLtzrJH5WV570YZb z39rZAbdrDj6+5ne1cqfp8R0/IOyX7NqXH2tZGSazb1UT/hB6fNlUzlerAkvfsPGe2xiiWy9 nRJLcUaioRZzUXEiAEvm04HSAgAA Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,oleksiyy@ami.com X-Gm-Message-State: f0GSPDALVEyhcbkSVOtSqAfUx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1589489555; bh=gCbEVkTlbfdCZhYnzYAlz5QZUqwNXusDwO00mEsJ/Ho=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=J8y1AfhsayeqxJvCS04SXE8tBcIxqJEotHUMucBtogxPEognz5P/CH4OGmEQRu3u6if 4Eo6ScQNF/EweIAcY8IxLc30plFbYCyvR6YGbqUBQrIsQmeIFOqVVJOiNHXqMktX3btpT NSlNhrbDwCXD2ECluvCd9btB7PBT1mONQzk= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Some OUT parameters in 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 Reviewed-by: Liming Gao --- 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/Pro= tocol/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 ); =20 =20 diff --git a/MdePkg/Include/Protocol/AtaPassThru.h b/MdePkg/Include/Protoco= l/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 th= e ATA device for which a device path node is to be allocated a= nd built. If there is no port multiplier, then specify 0xFFFF. - @param[in,out] DevicePath A pointer to a single device path nod= e that describes the ATA + @param[out] DevicePath A pointer to a single device path nod= e that describes the ATA device specified by Port and PortMult= iplierPort. This function is responsible for allocating the buf= fer DevicePath with the boot service AllocatePool(). It is th= e 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 ); =20 /** diff --git a/MdePkg/Include/Protocol/EdidOverride.h b/MdePkg/Include/Protoc= ol/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 ); =20 /// 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 DescriptorCou= nt. - @param[in, out] Image Points to the buffer where the current im= age is copied to. + @param[out] Image Points to the buffer where the current im= age is copied to. @param[in, out] ImageSize On entry, points to the size of the buffe= r pointed to by Image, in bytes. On return, points to the length of the im= age, in bytes. =20 @@ -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 ); =20 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 whi= ch 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 nod= e that describes the NVM Express + @param[out] DevicePath A pointer to a single device path nod= e that describes the NVM Express namespace specified by NamespaceId. T= his 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 ); =20 /** diff --git a/MdePkg/Include/Protocol/ScsiPassThruExt.h b/MdePkg/Include/Pro= tocol/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 ); =20 /** diff --git a/MdePkg/Include/Protocol/SdMmcPassThru.h b/MdePkg/Include/Proto= col/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_PRO= TOCOL instance. @param[in] Slot Specifies the slot number of the SD card f= or which a device path node is to be allocated and built. - @param[in,out] DevicePath A pointer to a single device path node tha= t describes the SD + @param[out] DevicePath A pointer to a single device path node tha= t describes the SD card specified by Slot. This function is r= esponsible for allocating the buffer DevicePath with the = boot service AllocatePool(). It is the caller's respons= ibility 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 ); =20 /** diff --git a/MdePkg/Include/Protocol/SimplePointer.h b/MdePkg/Include/Proto= col/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 ); =20 /// diff --git a/MdePkg/Include/Uefi/UefiSpec.h b/MdePkg/Include/Uefi/UefiSpec.h index 8ffaf97..455123f 100644 --- a/MdePkg/Include/Uefi/UefiSpec.h +++ b/MdePkg/Include/Uefi/UefiSpec.h @@ -211,7 +211,7 @@ EFI_STATUS On output, it is the size of the = buffer returned by the firmware if the buffer was large enough, or t= he size of the buffer needed to contain the map if the buffer was too sma= ll. - @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 whic= h firmware returns the key for the current memory map. @@ -232,7 +232,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 @@ -1556,7 +1556,7 @@ EFI_STATUS @param[in] Protocol Provides the protocol to search by. This parameter is only valid for a SearchT= ype of ByProtocol. @param[in] SearchKey Supplies the search key depending on the S= earchType. - @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 requ= ested array of handles that support Protocol. =20 @@ -1574,7 +1574,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 ); =20 --=20 2.9.0.windows.1 Please consider the environment before printing this email. The information contained in this message may be confidential and proprieta= ry 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 desig= nee. If the reader of this message is not the intended recipient, you are o= n notice that any distribution of this message, in any form, is strictly pr= ohibited. Please promptly notify the sender by reply e-mail or by telephon= e at 770-246-8600, and then delete or destroy all copies of the transmissio= n. -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#59591): https://edk2.groups.io/g/devel/message/59591 Mute This Topic: https://groups.io/mt/74214495/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-