* [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details @ 2024-03-08 23:16 Pethaiyan Madhan 2024-03-09 19:34 ` Michael D Kinney 2024-03-09 20:17 ` Michael D Kinney 0 siblings, 2 replies; 8+ messages in thread From: Pethaiyan Madhan @ 2024-03-08 23:16 UTC (permalink / raw) To: devel Cc: Pethaiyan Madhan, Michael D Kinney, Liming Gao, Zhiguang Liu, Yi Li, GuoX Xu 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): Add the following sentence at the end of the Image parameter description. "May be NULL with a zero ImageSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageSize is not too small and Image is NULL." 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): Add the following sentence at the end of the ImageInfo parameter description."May be NULL with a zero ImageInfoSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageInfoSize is not too small and Image is NULL." and add new descriptions for "EFI_INVALID_PARAMETER" return code. REF: UEFI spec v2.10 23.1.2 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Yi Li <yi1.li@intel.com> Cc: GuoX Xu <guox.xu@intel.com> Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> --- MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h b/MdePkg/Include/Protocol/FirmwareManagement.h index e535bb697d..90b7d83c8f 100644 --- a/MdePkg/Include/Protocol/FirmwareManagement.h +++ b/MdePkg/Include/Protocol/FirmwareManagement.h @@ -294,6 +294,8 @@ EFI_STATUS to contain the image(s) information if the buffer was too small. @param[in, out] ImageInfo A pointer to the buffer in which firmware places the current image(s) information. The information is an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. + May be NULL with a zero ImageInfoSize in order to determine the size of the + buffer needed. @param[out] DescriptorVersion A pointer to the location in which firmware returns the version number associated with the EFI_FIRMWARE_IMAGE_DESCRIPTOR. @param[out] DescriptorCount A pointer to the location in which firmware returns the number of @@ -314,7 +316,12 @@ EFI_STATUS @retval EFI_SUCCESS The device was successfully updated with the new image. @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too small. The current buffer size needed to hold the image(s) information is returned in ImageInfoSize. - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small and ImageInfo is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorCount is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersionName is NULL. @retval EFI_DEVICE_ERROR Valid information could not be returned. Possible corrupted image. **/ @@ -341,6 +348,9 @@ EFI_STATUS @param[in] ImageIndex A unique number identifying the firmware image(s) within the device. The number is between 1 and DescriptorCount. @param[out] Image Points to the buffer where the current image is copied to. + May be NULL with a zero ImageSize in order to determine the size of the + buffer needed. + @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. @@ -348,7 +358,7 @@ EFI_STATUS @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is too small to hold the image. The current buffer size needed to hold the image is returned in ImageSize. - @retval EFI_INVALID_PARAMETER The Image was NULL. + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and Image is NULL. @retval EFI_NOT_FOUND The current image is not copied to the buffer. @retval EFI_UNSUPPORTED The operation is not supported. @retval EFI_SECURITY_VIOLATION The operation could not be performed due to an authentication failure. -- 2.38.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116555): https://edk2.groups.io/g/devel/message/116555 Mute This Topic: https://groups.io/mt/104819885/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-03-08 23:16 [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Pethaiyan Madhan @ 2024-03-09 19:34 ` Michael D Kinney 2024-03-09 20:17 ` Michael D Kinney 1 sibling, 0 replies; 8+ messages in thread From: Michael D Kinney @ 2024-03-09 19:34 UTC (permalink / raw) To: devel@edk2.groups.io, Pethaiyan, Madhan Cc: Liming Gao, Liu, Zhiguang, Li, Yi1, GuoX Xu, Kinney, Michael D Does anyone know why this condition was dropped between UEFI 2.7 and UEFI 2.8 for Firmware Management Protocol GetImageInfo()? EFI_INVALID_PARAMETER ImageInfoSize is NULL. It seems the updated return code assumes ImageInfoSize is not NULL to perform those checks. Thanks, Mike > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > Pethaiyan Madhan > Sent: Friday, March 8, 2024 3:17 PM > To: devel@edk2.groups.io > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; Liming Gao <gaoliming@byosoft.com.cn>; > Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; > GuoX Xu <guox.xu@intel.com> > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo > description details > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > Add the following sentence at the end of the Image parameter > description. "May be NULL with a zero ImageSize in order to determine > the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageSize is not too small and Image is NULL." > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > Add the following sentence at the end of the ImageInfo parameter > description."May be NULL with a zero ImageInfoSize in order to > determine the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageInfoSize is not too small and Image is NULL." and add new > descriptions for "EFI_INVALID_PARAMETER" return code. > > REF: UEFI spec v2.10 23.1.2 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > Cc: Yi Li <yi1.li@intel.com> > Cc: GuoX Xu <guox.xu@intel.com> > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > --- > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > 1 file changed, 12 insertions(+), 2 deletions(-) > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > b/MdePkg/Include/Protocol/FirmwareManagement.h > index e535bb697d..90b7d83c8f 100644 > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > @@ -294,6 +294,8 @@ EFI_STATUS > to contain the image(s) > information if the buffer was too small. > @param[in, out] ImageInfo A pointer to the buffer in which > firmware places the current image(s) > information. The information is > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > + May be NULL with a zero > ImageInfoSize in order to determine the size of the > + buffer needed. > @param[out] DescriptorVersion A pointer to the location in > which firmware returns the version number > associated with the > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > @param[out] DescriptorCount A pointer to the location in > which firmware returns the number of > @@ -314,7 +316,12 @@ EFI_STATUS > @retval EFI_SUCCESS The device was successfully > updated with the new image. > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too > small. The current buffer size > needed to hold the image(s) > information is returned in ImageInfoSize. > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > and ImageInfo is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorCount is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersionName is NULL. > @retval EFI_DEVICE_ERROR Valid information could not be > returned. Possible corrupted image. > > **/ > @@ -341,6 +348,9 @@ EFI_STATUS > @param[in] ImageIndex A unique number identifying the > firmware image(s) within the device. > The number is between 1 and > DescriptorCount. > @param[out] Image Points to the buffer where the > current image is copied to. > + May be NULL with a zero ImageSize in > order to determine the size of the > + buffer needed. > + > @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. > > @@ -348,7 +358,7 @@ EFI_STATUS > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is > too small to hold the > image. The current buffer size needed > to hold the image is returned > in ImageSize. > - @retval EFI_INVALID_PARAMETER The Image was NULL. > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > Image is NULL. > @retval EFI_NOT_FOUND The current image is not copied to > the buffer. > @retval EFI_UNSUPPORTED The operation is not supported. > @retval EFI_SECURITY_VIOLATION The operation could not be performed > due to an authentication failure. > -- > 2.38.1.windows.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116562): https://edk2.groups.io/g/devel/message/116562 Mute This Topic: https://groups.io/mt/104819885/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-03-08 23:16 [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Pethaiyan Madhan 2024-03-09 19:34 ` Michael D Kinney @ 2024-03-09 20:17 ` Michael D Kinney 2024-03-14 8:16 ` Pethaiyan, Madhan 1 sibling, 1 reply; 8+ messages in thread From: Michael D Kinney @ 2024-03-09 20:17 UTC (permalink / raw) To: devel@edk2.groups.io, Pethaiyan, Madhan Cc: Liming Gao, Liu, Zhiguang, Li, Yi1, GuoX Xu, Kinney, Michael D Hi Madhan, I created a PR with all 3 related patches to run through EDK II CI. https://github.com/tianocore/edk2/pull/5453 There are CI failures. Please resolve and send updated patches. Thanks, Mike > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > Pethaiyan Madhan > Sent: Friday, March 8, 2024 3:17 PM > To: devel@edk2.groups.io > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; Liming Gao <gaoliming@byosoft.com.cn>; > Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; > GuoX Xu <guox.xu@intel.com> > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo > description details > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > Add the following sentence at the end of the Image parameter > description. "May be NULL with a zero ImageSize in order to determine > the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageSize is not too small and Image is NULL." > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > Add the following sentence at the end of the ImageInfo parameter > description."May be NULL with a zero ImageInfoSize in order to > determine the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageInfoSize is not too small and Image is NULL." and add new > descriptions for "EFI_INVALID_PARAMETER" return code. > > REF: UEFI spec v2.10 23.1.2 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > Cc: Yi Li <yi1.li@intel.com> > Cc: GuoX Xu <guox.xu@intel.com> > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > --- > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > 1 file changed, 12 insertions(+), 2 deletions(-) > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > b/MdePkg/Include/Protocol/FirmwareManagement.h > index e535bb697d..90b7d83c8f 100644 > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > @@ -294,6 +294,8 @@ EFI_STATUS > to contain the image(s) > information if the buffer was too small. > @param[in, out] ImageInfo A pointer to the buffer in which > firmware places the current image(s) > information. The information is > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > + May be NULL with a zero > ImageInfoSize in order to determine the size of the > + buffer needed. > @param[out] DescriptorVersion A pointer to the location in > which firmware returns the version number > associated with the > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > @param[out] DescriptorCount A pointer to the location in > which firmware returns the number of > @@ -314,7 +316,12 @@ EFI_STATUS > @retval EFI_SUCCESS The device was successfully > updated with the new image. > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too > small. The current buffer size > needed to hold the image(s) > information is returned in ImageInfoSize. > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > and ImageInfo is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorCount is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersionName is NULL. > @retval EFI_DEVICE_ERROR Valid information could not be > returned. Possible corrupted image. > > **/ > @@ -341,6 +348,9 @@ EFI_STATUS > @param[in] ImageIndex A unique number identifying the > firmware image(s) within the device. > The number is between 1 and > DescriptorCount. > @param[out] Image Points to the buffer where the > current image is copied to. > + May be NULL with a zero ImageSize in > order to determine the size of the > + buffer needed. > + > @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. > > @@ -348,7 +358,7 @@ EFI_STATUS > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is > too small to hold the > image. The current buffer size needed > to hold the image is returned > in ImageSize. > - @retval EFI_INVALID_PARAMETER The Image was NULL. > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > Image is NULL. > @retval EFI_NOT_FOUND The current image is not copied to > the buffer. > @retval EFI_UNSUPPORTED The operation is not supported. > @retval EFI_SECURITY_VIOLATION The operation could not be performed > due to an authentication failure. > -- > 2.38.1.windows.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116563): https://edk2.groups.io/g/devel/message/116563 Mute This Topic: https://groups.io/mt/104819885/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-03-09 20:17 ` Michael D Kinney @ 2024-03-14 8:16 ` Pethaiyan, Madhan 2024-03-26 5:51 ` Pethaiyan, Madhan 2024-03-28 1:10 ` 回复: " gaoliming via groups.io 0 siblings, 2 replies; 8+ messages in thread From: Pethaiyan, Madhan @ 2024-03-14 8:16 UTC (permalink / raw) To: Kinney, Michael D, devel@edk2.groups.io Cc: Liming Gao, Liu, Zhiguang, Li, Yi1, GuoX Xu [-- Attachment #1: Type: text/plain, Size: 6806 bytes --] Hi Mike , I had raised new code review addressing the coding standard errors and those were not part of my change any way .. Thanks, P. Madhan -----Original Message----- From: Kinney, Michael D <michael.d.kinney@intel.com> Sent: Sunday, March 10, 2024 1:47 AM To: devel@edk2.groups.io; Pethaiyan, Madhan <madhan.pethaiyan@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu <guox.xu@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> Subject: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Hi Madhan, I created a PR with all 3 related patches to run through EDK II CI. https://github.com/tianocore/edk2/pull/5453 There are CI failures. Please resolve and send updated patches. Thanks, Mike > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > Pethaiyan Madhan > Sent: Friday, March 8, 2024 3:17 PM > To: devel@edk2.groups.io > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; Liming Gao <gaoliming@byosoft.com.cn>; > Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; > GuoX Xu <guox.xu@intel.com> > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > GetImageInfo description details > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > Add the following sentence at the end of the Image parameter > description. "May be NULL with a zero ImageSize in order to determine > the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageSize is not too small and Image is NULL." > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > Add the following sentence at the end of the ImageInfo parameter > description."May be NULL with a zero ImageInfoSize in order to > determine the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageInfoSize is not too small and Image is NULL." and add new > descriptions for "EFI_INVALID_PARAMETER" return code. > > REF: UEFI spec v2.10 23.1.2 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > Cc: Yi Li <yi1.li@intel.com> > Cc: GuoX Xu <guox.xu@intel.com> > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > --- > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > 1 file changed, 12 insertions(+), 2 deletions(-) > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > b/MdePkg/Include/Protocol/FirmwareManagement.h > index e535bb697d..90b7d83c8f 100644 > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > @@ -294,6 +294,8 @@ EFI_STATUS > to contain the image(s) > information if the buffer was too small. > @param[in, out] ImageInfo A pointer to the buffer in which > firmware places the current image(s) > information. The information is > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > + May be NULL with a zero > ImageInfoSize in order to determine the size of the > + buffer needed. > @param[out] DescriptorVersion A pointer to the location in > which firmware returns the version number > associated with the > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > @param[out] DescriptorCount A pointer to the location in > which firmware returns the number of > @@ -314,7 +316,12 @@ EFI_STATUS > @retval EFI_SUCCESS The device was successfully > updated with the new image. > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too > small. The current buffer size > needed to hold the image(s) > information is returned in ImageInfoSize. > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > and ImageInfo is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorCount is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersionName is NULL. > @retval EFI_DEVICE_ERROR Valid information could not be > returned. Possible corrupted image. > > **/ > @@ -341,6 +348,9 @@ EFI_STATUS > @param[in] ImageIndex A unique number identifying the > firmware image(s) within the device. > The number is between 1 and > DescriptorCount. > @param[out] Image Points to the buffer where the > current image is copied to. > + May be NULL with a zero ImageSize in > order to determine the size of the > + buffer needed. > + > @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. > > @@ -348,7 +358,7 @@ EFI_STATUS > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is > too small to hold the > image. The current buffer size > needed to hold the image is returned > in ImageSize. > - @retval EFI_INVALID_PARAMETER The Image was NULL. > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > Image is NULL. > @retval EFI_NOT_FOUND The current image is not copied to > the buffer. > @retval EFI_UNSUPPORTED The operation is not supported. > @retval EFI_SECURITY_VIOLATION The operation could not be performed > due to an authentication failure. > -- > 2.38.1.windows.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116855): https://edk2.groups.io/g/devel/message/116855 Mute This Topic: https://groups.io/mt/104819885/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- [-- Attachment #2: Type: message/rfc822, Size: 15060 bytes --] From: "Pethaiyan, Madhan" <madhan.pethaiyan@intel.com> To: "devel@edk2.groups.io" <devel@edk2.groups.io> Cc: "Pethaiyan, Madhan" <madhan.pethaiyan@intel.com>, "Kinney, Michael D" <michael.d.kinney@intel.com>, Liming Gao <gaoliming@byosoft.com.cn>, "Liu, Zhiguang" <zhiguang.liu@intel.com>, "Li, Yi1" <yi1.li@intel.com>, GuoX Xu <guox.xu@intel.com> Subject: [PATCH V1 3/3] SignedCapsulePkg: Update GetImage and GetImageInfo description details Date: Thu, 14 Mar 2024 08:11:33 +0000 Message-ID: <20240314081133.1134-3-madhan.pethaiyan@intel.com> 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): Add the following sentence at the end of the Image parameter description. "May be NULL with a zero ImageSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageSize is not too small and Image is NULL." 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): Add the following sentence at the end of the ImageInfo parameter description."May be NULL with a zero ImageInfoSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageInfoSize is not too small and Image is NULL." and add new descriptions for "EFI_INVALID_PARAMETER" return code. REF: UEFI spec v2.10 23.1.2 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Yi Li <yi1.li@intel.com> Cc: GuoX Xu <guox.xu@intel.com> Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> --- .../SystemFirmwareUpdate/SystemFirmwareCommonDxe.c | 13 +++++++++++-- .../SystemFirmwareUpdate/SystemFirmwareDxe.h | 13 +++++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareCommonDxe.c b/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareCommonDxe.c index 077bd0cb31..6e394d85d4 100644 --- a/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareCommonDxe.c +++ b/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareCommonDxe.c @@ -34,6 +34,8 @@ EFI_FIRMWARE_MANAGEMENT_PROTOCOL mFirmwareManagementProtocol = { to contain the image(s) information if the buffer was too small. @param[in, out] ImageInfo A pointer to the buffer in which firmware places the current image(s) information. The information is an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. + May be NULL with a zero ImageInfoSize in order to determine the size of the + buffer needed. @param[out] DescriptorVersion A pointer to the location in which firmware returns the version number associated with the EFI_FIRMWARE_IMAGE_DESCRIPTOR. @param[out] DescriptorCount A pointer to the location in which firmware returns the number of @@ -54,7 +56,12 @@ EFI_FIRMWARE_MANAGEMENT_PROTOCOL mFirmwareManagementProtocol = { @retval EFI_SUCCESS The device was successfully updated with the new image. @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too small. The current buffer size needed to hold the image(s) information is returned in ImageInfoSize. - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small and ImageInfo is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorCount is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersionName is NULL. @retval EFI_DEVICE_ERROR Valid information could not be returned. Possible corrupted image. **/ @@ -153,6 +160,8 @@ FmpGetImageInfo ( @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. + May be NULL with a zero ImageSize in order to determine the size of the + buffer needed. @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. @@ -160,7 +169,7 @@ FmpGetImageInfo ( @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is too small to hold the image. The current buffer size needed to hold the image is returned in ImageSize. - @retval EFI_INVALID_PARAMETER The Image was NULL. + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and Image is NULL @retval EFI_NOT_FOUND The current image is not copied to the buffer. @retval EFI_UNSUPPORTED The operation is not supported. @retval EFI_SECURITY_VIOLATION The operation could not be performed due to an authentication failure. diff --git a/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h b/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h index c8443865cb..b2b2c78318 100644 --- a/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h +++ b/SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareDxe.h @@ -137,6 +137,8 @@ typedef struct { to contain the image(s) information if the buffer was too small. @param[in, out] ImageInfo A pointer to the buffer in which firmware places the current image(s) information. The information is an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. + May be NULL with a zero ImageInfoSize in order to determine the size of the + buffer needed. @param[out] DescriptorVersion A pointer to the location in which firmware returns the version number associated with the EFI_FIRMWARE_IMAGE_DESCRIPTOR. @param[out] DescriptorCount A pointer to the location in which firmware returns the number of @@ -157,7 +159,12 @@ typedef struct { @retval EFI_SUCCESS The device was successfully updated with the new image. @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too small. The current buffer size needed to hold the image(s) information is returned in ImageInfoSize. - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small and ImageInfo is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorCount is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersionName is NULL. @retval EFI_DEVICE_ERROR Valid information could not be returned. Possible corrupted image. **/ @@ -184,6 +191,8 @@ FmpGetImageInfo ( @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. + May be NULL with a zero ImageSize in order to determine the size of the + buffer needed. @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. @@ -191,7 +200,7 @@ FmpGetImageInfo ( @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is too small to hold the image. The current buffer size needed to hold the image is returned in ImageSize. - @retval EFI_INVALID_PARAMETER The Image was NULL. + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and Image is NULL @retval EFI_NOT_FOUND The current image is not copied to the buffer. @retval EFI_UNSUPPORTED The operation is not supported. @retval EFI_SECURITY_VIOLATION The operation could not be performed due to an authentication failure. -- 2.38.1.windows.1 [-- Attachment #3: Type: message/rfc822, Size: 11079 bytes --] From: "Pethaiyan, Madhan" <madhan.pethaiyan@intel.com> To: "devel@edk2.groups.io" <devel@edk2.groups.io> Cc: "Pethaiyan, Madhan" <madhan.pethaiyan@intel.com>, "Kinney, Michael D" <michael.d.kinney@intel.com>, Liming Gao <gaoliming@byosoft.com.cn>, "Liu, Zhiguang" <zhiguang.liu@intel.com>, "Li, Yi1" <yi1.li@intel.com>, GuoX Xu <guox.xu@intel.com> Subject: [PATCH V1 2/3] MdePkg: Update GetImage , GetImageInfo description details Date: Thu, 14 Mar 2024 08:11:32 +0000 Message-ID: <20240314081133.1134-2-madhan.pethaiyan@intel.com> 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): Add the following sentence at the end of the Image parameter description. "May be NULL with a zero ImageSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageSize is not too small and Image is NULL." 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): Add the following sentence at the end of the ImageInfo parameter description."May be NULL with a zero ImageInfoSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageInfoSize is not too small and Image is NULL." and add new descriptions for "EFI_INVALID_PARAMETER" return code. REF: UEFI spec v2.10 23.1.2 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Yi Li <yi1.li@intel.com> Cc: GuoX Xu <guox.xu@intel.com> Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> --- MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h b/MdePkg/Include/Protocol/FirmwareManagement.h index e535bb697d..90b7d83c8f 100644 --- a/MdePkg/Include/Protocol/FirmwareManagement.h +++ b/MdePkg/Include/Protocol/FirmwareManagement.h @@ -294,6 +294,8 @@ EFI_STATUS to contain the image(s) information if the buffer was too small. @param[in, out] ImageInfo A pointer to the buffer in which firmware places the current image(s) information. The information is an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. + May be NULL with a zero ImageInfoSize in order to determine the size of the + buffer needed. @param[out] DescriptorVersion A pointer to the location in which firmware returns the version number associated with the EFI_FIRMWARE_IMAGE_DESCRIPTOR. @param[out] DescriptorCount A pointer to the location in which firmware returns the number of @@ -314,7 +316,12 @@ EFI_STATUS @retval EFI_SUCCESS The device was successfully updated with the new image. @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too small. The current buffer size needed to hold the image(s) information is returned in ImageInfoSize. - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small and ImageInfo is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorCount is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersionName is NULL. @retval EFI_DEVICE_ERROR Valid information could not be returned. Possible corrupted image. **/ @@ -341,6 +348,9 @@ EFI_STATUS @param[in] ImageIndex A unique number identifying the firmware image(s) within the device. The number is between 1 and DescriptorCount. @param[out] Image Points to the buffer where the current image is copied to. + May be NULL with a zero ImageSize in order to determine the size of the + buffer needed. + @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. @@ -348,7 +358,7 @@ EFI_STATUS @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is too small to hold the image. The current buffer size needed to hold the image is returned in ImageSize. - @retval EFI_INVALID_PARAMETER The Image was NULL. + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and Image is NULL. @retval EFI_NOT_FOUND The current image is not copied to the buffer. @retval EFI_UNSUPPORTED The operation is not supported. @retval EFI_SECURITY_VIOLATION The operation could not be performed due to an authentication failure. -- 2.38.1.windows.1 [-- Attachment #4: Type: message/rfc822, Size: 17458 bytes --] From: "Pethaiyan, Madhan" <madhan.pethaiyan@intel.com> To: "devel@edk2.groups.io" <devel@edk2.groups.io> Cc: "Pethaiyan, Madhan" <madhan.pethaiyan@intel.com>, "Kinney, Michael D" <michael.d.kinney@intel.com>, Liming Gao <gaoliming@byosoft.com.cn>, "Liu, Zhiguang" <zhiguang.liu@intel.com>, "Li, Yi1" <yi1.li@intel.com>, GuoX Xu <guox.xu@intel.com> Subject: [PATCH V1 1/3] FmpDevicePkg: GetImageInfo Add missing conditions Date: Thu, 14 Mar 2024 08:11:31 +0000 Message-ID: <20240314081133.1134-1-madhan.pethaiyan@intel.com> 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): Add the following sentence at the end of the Image parameter description. "May be NULL with a zero ImageSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageSize is not too small and Image is NULL." 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): Add the following sentence at the end of the ImageInfo parameter description."May be NULL with a zero ImageInfoSize in order to determine the size of the buffer needed". Modify the description of "EFI_INVALID_PARAMETER" return code as "The ImageInfoSize is not too small and Image is NULL." and add new descriptions for "EFI_INVALID_PARAMETER" return code. REF: UEFI spec v2.10 23.1.2 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Yi Li <yi1.li@intel.com> Cc: GuoX Xu <guox.xu@intel.com> Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> --- FmpDevicePkg/FmpDxe/FmpDxe.c | 52 +++++++++++++++++++++--------------- FmpDevicePkg/FmpDxe/FmpDxe.h | 15 ++++++++--- 2 files changed, 43 insertions(+), 24 deletions(-) diff --git a/FmpDevicePkg/FmpDxe/FmpDxe.c b/FmpDevicePkg/FmpDxe/FmpDxe.c index 1e7ec4a09e..4111b7cb8e 100644 --- a/FmpDevicePkg/FmpDxe/FmpDxe.c +++ b/FmpDevicePkg/FmpDxe/FmpDxe.c @@ -43,20 +43,20 @@ const FIRMWARE_MANAGEMENT_PRIVATE_DATA mFirmwareManagementPrivateDataTemplate = FIRMWARE_MANAGEMENT_PRIVATE_DATA_SIGNATURE, // Signature NULL, // Handle { // Fmp - GetTheImageInfo, + GetImageInfo, GetTheImage, SetTheImage, CheckTheImage, GetPackageInfo, SetPackageInfo }, - FALSE, // DescriptorPopulated - { // Desc - 1, // ImageIndex + FALSE, // DescriptorPopulated + { // Desc + 1, // ImageIndex // // ImageTypeId // - { 0x00000000, 0x0000,0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } + { 0x00000000, 0x0000,0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }, 1, // ImageId NULL, // ImageIdName @@ -71,18 +71,18 @@ const FIRMWARE_MANAGEMENT_PRIVATE_DATA mFirmwareManagementPrivateDataTemplate = 0, // LastAttemptStatus 0 // HardwareInstance }, - NULL, // ImageIdName - NULL, // VersionName - TRUE, // RuntimeVersionSupported - NULL, // FmpDeviceLockEvent - FALSE, // FmpDeviceLocked - NULL, // FmpDeviceContext - NULL, // VersionVariableName - NULL, // LsvVariableName - NULL, // LastAttemptStatusVariableName - NULL, // LastAttemptVersionVariableName - NULL, // FmpStateVariableName - TRUE // DependenciesSatisfied + NULL, // ImageIdName + NULL, // VersionName + TRUE, // RuntimeVersionSupported + NULL, // FmpDeviceLockEvent + FALSE, // FmpDeviceLocked + NULL, // FmpDeviceContext + NULL, // VersionVariableName + NULL, // LsvVariableName + NULL, // LastAttemptStatusVariableName + NULL, // LastAttemptVersionVariableName + NULL, // FmpStateVariableName + TRUE // DependenciesSatisfied }; /// @@ -417,6 +417,8 @@ PopulateDescriptor ( to contain the image(s) information if the buffer was too small. @param[in, out] ImageInfo A pointer to the buffer in which firmware places the current image(s) information. The information is an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. + May be NULL with a zero ImageInfoSize in order to determine the size of the + buffer needed. @param[out] DescriptorVersion A pointer to the location in which firmware returns the version number associated with the EFI_FIRMWARE_IMAGE_DESCRIPTOR. @param[out] DescriptorCount A pointer to the location in which firmware returns the number of @@ -437,13 +439,18 @@ PopulateDescriptor ( @retval EFI_SUCCESS The device was successfully updated with the new image. @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too small. The current buffer size needed to hold the image(s) information is returned in ImageInfoSize. - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small and ImageInfo is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorCount is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersionName is NULL. @retval EFI_DEVICE_ERROR Valid information could not be returned. Possible corrupted image. **/ EFI_STATUS EFIAPI -GetTheImageInfo ( +GetImageInfo ( IN EFI_FIRMWARE_MANAGEMENT_PROTOCOL *This, IN OUT UINTN *ImageInfoSize, IN OUT EFI_FIRMWARE_IMAGE_DESCRIPTOR *ImageInfo, @@ -495,7 +502,7 @@ GetTheImageInfo ( // Confirm that buffer isn't null // if ( (ImageInfo == NULL) || (DescriptorVersion == NULL) || (DescriptorCount == NULL) || (DescriptorSize == NULL) - || (PackageVersion == NULL)) + || (PackageVersion == NULL) || (PackageVersionName == NULL)) { DEBUG ((DEBUG_ERROR, "FmpDxe(%s): GetImageInfo() - Pointer Parameter is NULL.\n", mImageIdName)); Status = EFI_INVALID_PARAMETER; @@ -544,6 +551,9 @@ cleanup: @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. + May be NULL with a zero ImageSize in order to determine the size of the + buffer needed. + @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. @@ -551,7 +561,7 @@ cleanup: @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is too small to hold the image. The current buffer size needed to hold the image is returned in ImageSize. - @retval EFI_INVALID_PARAMETER The Image was NULL. + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and Image is NULL @retval EFI_NOT_FOUND The current image is not copied to the buffer. @retval EFI_UNSUPPORTED The operation is not supported. @retval EFI_SECURITY_VIOLATION The operation could not be performed due to an authentication failure. diff --git a/FmpDevicePkg/FmpDxe/FmpDxe.h b/FmpDevicePkg/FmpDxe/FmpDxe.h index 7baf730e69..d2ade143bd 100644 --- a/FmpDevicePkg/FmpDxe/FmpDxe.h +++ b/FmpDevicePkg/FmpDxe/FmpDxe.h @@ -114,6 +114,8 @@ DetectTestKey ( to contain the image(s) information if the buffer was too small. @param[in, out] ImageInfo A pointer to the buffer in which firmware places the current image(s) information. The information is an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. + May be NULL with a zero ImageInfoSize in order to determine the size of the + buffer needed. @param[out] DescriptorVersion A pointer to the location in which firmware returns the version number associated with the EFI_FIRMWARE_IMAGE_DESCRIPTOR. @param[out] DescriptorCount A pointer to the location in which firmware returns the number of @@ -134,13 +136,18 @@ DetectTestKey ( @retval EFI_SUCCESS The device was successfully updated with the new image. @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too small. The current buffer size needed to hold the image(s) information is returned in ImageInfoSize. - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small and ImageInfo is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorCount is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and DescriptorSize is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersion is NULL. + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and PackageVersionName is NULL. @retval EFI_DEVICE_ERROR Valid information could not be returned. Possible corrupted image. **/ EFI_STATUS EFIAPI -GetTheImageInfo ( +GetImageInfo ( IN EFI_FIRMWARE_MANAGEMENT_PROTOCOL *This, IN OUT UINTN *ImageInfoSize, IN OUT EFI_FIRMWARE_IMAGE_DESCRIPTOR *ImageInfo, @@ -161,6 +168,8 @@ GetTheImageInfo ( @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. + May be NULL with a zero ImageSize in order to determine the size of the + buffer needed. @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. @@ -168,7 +177,7 @@ GetTheImageInfo ( @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is too small to hold the image. The current buffer size needed to hold the image is returned in ImageSize. - @retval EFI_INVALID_PARAMETER The Image was NULL. + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and Image is NULL @retval EFI_NOT_FOUND The current image is not copied to the buffer. @retval EFI_UNSUPPORTED The operation is not supported. @retval EFI_SECURITY_VIOLATION The operation could not be performed due to an authentication failure. -- 2.38.1.windows.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-03-14 8:16 ` Pethaiyan, Madhan @ 2024-03-26 5:51 ` Pethaiyan, Madhan 2024-03-28 1:10 ` 回复: " gaoliming via groups.io 1 sibling, 0 replies; 8+ messages in thread From: Pethaiyan, Madhan @ 2024-03-26 5:51 UTC (permalink / raw) To: Kinney, Michael D, devel@edk2.groups.io Cc: Liming Gao, Liu, Zhiguang, Li, Yi1, GuoX Xu Hi All , Remider , request to review and provide feedback , Thanks, P. Madhan -----Original Message----- From: Pethaiyan, Madhan Sent: Thursday, March 14, 2024 1:47 PM To: Kinney, Michael D <michael.d.kinney@intel.com>; devel@edk2.groups.io Cc: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang <Zhiguang.Liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu <guox.xu@intel.com> Subject: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Hi Mike , I had raised new code review addressing the coding standard errors and those were not part of my change any way .. Thanks, P. Madhan -----Original Message----- From: Kinney, Michael D <michael.d.kinney@intel.com> Sent: Sunday, March 10, 2024 1:47 AM To: devel@edk2.groups.io; Pethaiyan, Madhan <madhan.pethaiyan@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu <guox.xu@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> Subject: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Hi Madhan, I created a PR with all 3 related patches to run through EDK II CI. https://github.com/tianocore/edk2/pull/5453 There are CI failures. Please resolve and send updated patches. Thanks, Mike > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > Pethaiyan Madhan > Sent: Friday, March 8, 2024 3:17 PM > To: devel@edk2.groups.io > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; Liming Gao <gaoliming@byosoft.com.cn>; > Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; > GuoX Xu <guox.xu@intel.com> > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > GetImageInfo description details > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > Add the following sentence at the end of the Image parameter > description. "May be NULL with a zero ImageSize in order to determine > the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageSize is not too small and Image is NULL." > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > Add the following sentence at the end of the ImageInfo parameter > description."May be NULL with a zero ImageInfoSize in order to > determine the size of the buffer needed". > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > ImageInfoSize is not too small and Image is NULL." and add new > descriptions for "EFI_INVALID_PARAMETER" return code. > > REF: UEFI spec v2.10 23.1.2 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > Cc: Yi Li <yi1.li@intel.com> > Cc: GuoX Xu <guox.xu@intel.com> > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > --- > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > 1 file changed, 12 insertions(+), 2 deletions(-) > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > b/MdePkg/Include/Protocol/FirmwareManagement.h > index e535bb697d..90b7d83c8f 100644 > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > @@ -294,6 +294,8 @@ EFI_STATUS > to contain the image(s) > information if the buffer was too small. > @param[in, out] ImageInfo A pointer to the buffer in which > firmware places the current image(s) > information. The information is > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > + May be NULL with a zero > ImageInfoSize in order to determine the size of the > + buffer needed. > @param[out] DescriptorVersion A pointer to the location in > which firmware returns the version number > associated with the > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > @param[out] DescriptorCount A pointer to the location in > which firmware returns the number of > @@ -314,7 +316,12 @@ EFI_STATUS > @retval EFI_SUCCESS The device was successfully > updated with the new image. > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was too > small. The current buffer size > needed to hold the image(s) > information is returned in ImageInfoSize. > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > and ImageInfo is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorCount is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > DescriptorSize is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersion is NULL. > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > PackageVersionName is NULL. > @retval EFI_DEVICE_ERROR Valid information could not be > returned. Possible corrupted image. > > **/ > @@ -341,6 +348,9 @@ EFI_STATUS > @param[in] ImageIndex A unique number identifying the > firmware image(s) within the device. > The number is between 1 and > DescriptorCount. > @param[out] Image Points to the buffer where the > current image is copied to. > + May be NULL with a zero ImageSize in > order to determine the size of the > + buffer needed. > + > @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. > > @@ -348,7 +358,7 @@ EFI_STATUS > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize is > too small to hold the > image. The current buffer size > needed to hold the image is returned > in ImageSize. > - @retval EFI_INVALID_PARAMETER The Image was NULL. > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > Image is NULL. > @retval EFI_NOT_FOUND The current image is not copied to > the buffer. > @retval EFI_UNSUPPORTED The operation is not supported. > @retval EFI_SECURITY_VIOLATION The operation could not be performed > due to an authentication failure. > -- > 2.38.1.windows.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#117135): https://edk2.groups.io/g/devel/message/117135 Mute This Topic: https://groups.io/mt/104819885/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* 回复: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-03-14 8:16 ` Pethaiyan, Madhan 2024-03-26 5:51 ` Pethaiyan, Madhan @ 2024-03-28 1:10 ` gaoliming via groups.io 2024-05-13 12:09 ` Pethaiyan, Madhan 1 sibling, 1 reply; 8+ messages in thread From: gaoliming via groups.io @ 2024-03-28 1:10 UTC (permalink / raw) To: 'Pethaiyan, Madhan', 'Kinney, Michael D', devel Cc: 'Liu, Zhiguang', 'Li, Yi1', 'GuoX Xu' Madhan: I have no comments for this patch set. Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> Have you create Edk2 PR to verify the changes? Thanks Liming > -----邮件原件----- > 发件人: Pethaiyan, Madhan <madhan.pethaiyan@intel.com> > 发送时间: 2024年3月14日 16:17 > 收件人: Kinney, Michael D <michael.d.kinney@intel.com>; > devel@edk2.groups.io > 抄送: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang > <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu > <guox.xu@intel.com> > 主题: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo > description details > > Hi Mike , > > I had raised new code review addressing the coding standard errors and those > were not part of my change any way .. > > Thanks, > P. Madhan > > -----Original Message----- > From: Kinney, Michael D <michael.d.kinney@intel.com> > Sent: Sunday, March 10, 2024 1:47 AM > To: devel@edk2.groups.io; Pethaiyan, Madhan > <madhan.pethaiyan@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang > <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu > <guox.xu@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> > Subject: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > GetImageInfo description details > > Hi Madhan, > > I created a PR with all 3 related patches to run through EDK II CI. > > https://github.com/tianocore/edk2/pull/5453 > > There are CI failures. Please resolve and send updated patches. > > Thanks, > > Mike > > > -----Original Message----- > > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > > Pethaiyan Madhan > > Sent: Friday, March 8, 2024 3:17 PM > > To: devel@edk2.groups.io > > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D > > <michael.d.kinney@intel.com>; Liming Gao <gaoliming@byosoft.com.cn>; > > Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; > > GuoX Xu <guox.xu@intel.com> > > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > > GetImageInfo description details > > > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > > Add the following sentence at the end of the Image parameter > > description. "May be NULL with a zero ImageSize in order to determine > > the size of the buffer needed". > > > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > > ImageSize is not too small and Image is NULL." > > > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > > Add the following sentence at the end of the ImageInfo parameter > > description."May be NULL with a zero ImageInfoSize in order to > > determine the size of the buffer needed". > > > > Modify the description of "EFI_INVALID_PARAMETER" return code as "The > > ImageInfoSize is not too small and Image is NULL." and add new > > descriptions for "EFI_INVALID_PARAMETER" return code. > > > > REF: UEFI spec v2.10 23.1.2 > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > > Cc: Liming Gao <gaoliming@byosoft.com.cn> > > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > > Cc: Yi Li <yi1.li@intel.com> > > Cc: GuoX Xu <guox.xu@intel.com> > > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > > --- > > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > > 1 file changed, 12 insertions(+), 2 deletions(-) > > > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > > b/MdePkg/Include/Protocol/FirmwareManagement.h > > index e535bb697d..90b7d83c8f 100644 > > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > > @@ -294,6 +294,8 @@ EFI_STATUS > > to contain the image(s) > > information if the buffer was too small. > > @param[in, out] ImageInfo A pointer to the buffer in which > > firmware places the current image(s) > > information. The > information is > > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > > + May be NULL with a zero > > ImageInfoSize in order to determine the size of the > > + buffer needed. > > @param[out] DescriptorVersion A pointer to the location in > > which firmware returns the version number > > associated with the > > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > > @param[out] DescriptorCount A pointer to the location in > > which firmware returns the number of > > @@ -314,7 +316,12 @@ EFI_STATUS > > @retval EFI_SUCCESS The device was successfully > > updated with the new image. > > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was > too > > small. The current buffer size > > needed to hold the image(s) > > information is returned in ImageInfoSize. > > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > > and ImageInfo is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > DescriptorVersion is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > DescriptorCount is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > DescriptorSize is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > PackageVersion is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > PackageVersionName is NULL. > > @retval EFI_DEVICE_ERROR Valid information could not > be > > returned. Possible corrupted image. > > > > **/ > > @@ -341,6 +348,9 @@ EFI_STATUS > > @param[in] ImageIndex A unique number identifying the > > firmware image(s) within the device. > > The number is between 1 and > > DescriptorCount. > > @param[out] Image Points to the buffer where the > > current image is copied to. > > + May be NULL with a zero > ImageSize in > > order to determine the size of the > > + buffer needed. > > + > > @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. > > > > @@ -348,7 +358,7 @@ EFI_STATUS > > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize > is > > too small to hold the > > image. The current buffer size > > needed to hold the image is returned > > in ImageSize. > > - @retval EFI_INVALID_PARAMETER The Image was NULL. > > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > > Image is NULL. > > @retval EFI_NOT_FOUND The current image is not copied > to > > the buffer. > > @retval EFI_UNSUPPORTED The operation is not supported. > > @retval EFI_SECURITY_VIOLATION The operation could not be > performed > > due to an authentication failure. > > -- > > 2.38.1.windows.1 > > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#117186): https://edk2.groups.io/g/devel/message/117186 Mute This Topic: https://groups.io/mt/105189505/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-03-28 1:10 ` 回复: " gaoliming via groups.io @ 2024-05-13 12:09 ` Pethaiyan, Madhan 2024-05-13 13:11 ` 回复: " gaoliming via groups.io 0 siblings, 1 reply; 8+ messages in thread From: Pethaiyan, Madhan @ 2024-05-13 12:09 UTC (permalink / raw) To: gaoliming, Kinney, Michael D, devel@edk2.groups.io Cc: Liu, Zhiguang, Li, Yi1, 'GuoX Xu' Hi all , I had created EDK2 PR, few weeks ago, thought it will be reviewed and approved . Please help to check and approve. https://github.com/tianocore/edk2/pull/5584 https://github.com/tianocore/edk2/pull/5586 https://github.com/tianocore/edk2/pull/5587 Thanks, P. Madhan -----Original Message----- From: gaoliming <gaoliming@byosoft.com.cn> Sent: Thursday, March 28, 2024 6:41 AM To: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com>; devel@edk2.groups.io Cc: Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; 'GuoX Xu' <guox.xu@intel.com> Subject: 回复: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Madhan: I have no comments for this patch set. Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> Have you create Edk2 PR to verify the changes? Thanks Liming > -----邮件原件----- > 发件人: Pethaiyan, Madhan <madhan.pethaiyan@intel.com> > 发送时间: 2024年3月14日 16:17 > 收件人: Kinney, Michael D <michael.d.kinney@intel.com>; > devel@edk2.groups.io > 抄送: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang > <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu > <guox.xu@intel.com> > 主题: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo > description details > > Hi Mike , > > I had raised new code review addressing the coding standard errors and those > were not part of my change any way .. > > Thanks, > P. Madhan > > -----Original Message----- > From: Kinney, Michael D <michael.d.kinney@intel.com> > Sent: Sunday, March 10, 2024 1:47 AM > To: devel@edk2.groups.io; Pethaiyan, Madhan > <madhan.pethaiyan@intel.com> > Cc: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang > <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu > <guox.xu@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> > Subject: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > GetImageInfo description details > > Hi Madhan, > > I created a PR with all 3 related patches to run through EDK II CI. > > https://github.com/tianocore/edk2/pull/5453 > > There are CI failures. Please resolve and send updated patches. > > Thanks, > > Mike > > > -----Original Message----- > > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > > Pethaiyan Madhan > > Sent: Friday, March 8, 2024 3:17 PM > > To: devel@edk2.groups.io > > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael > > D <michael.d.kinney@intel.com>; Liming Gao > > <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; > > Li, Yi1 <yi1.li@intel.com>; GuoX Xu <guox.xu@intel.com> > > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > > GetImageInfo description details > > > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > > Add the following sentence at the end of the Image parameter > > description. "May be NULL with a zero ImageSize in order to > > determine the size of the buffer needed". > > > > Modify the description of "EFI_INVALID_PARAMETER" return code as > > "The ImageSize is not too small and Image is NULL." > > > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > > Add the following sentence at the end of the ImageInfo parameter > > description."May be NULL with a zero ImageInfoSize in order to > > determine the size of the buffer needed". > > > > Modify the description of "EFI_INVALID_PARAMETER" return code as > > "The ImageInfoSize is not too small and Image is NULL." and add new > > descriptions for "EFI_INVALID_PARAMETER" return code. > > > > REF: UEFI spec v2.10 23.1.2 > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > > Cc: Liming Gao <gaoliming@byosoft.com.cn> > > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > > Cc: Yi Li <yi1.li@intel.com> > > Cc: GuoX Xu <guox.xu@intel.com> > > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > > --- > > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > > 1 file changed, 12 insertions(+), 2 deletions(-) > > > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > > b/MdePkg/Include/Protocol/FirmwareManagement.h > > index e535bb697d..90b7d83c8f 100644 > > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > > @@ -294,6 +294,8 @@ EFI_STATUS > > to contain the image(s) > > information if the buffer was too small. > > @param[in, out] ImageInfo A pointer to the buffer in which > > firmware places the current image(s) > > information. The > information is > > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > > + May be NULL with a zero > > ImageInfoSize in order to determine the size of the > > + buffer needed. > > @param[out] DescriptorVersion A pointer to the location in > > which firmware returns the version number > > associated with the > > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > > @param[out] DescriptorCount A pointer to the location in > > which firmware returns the number of @@ -314,7 +316,12 @@ EFI_STATUS > > @retval EFI_SUCCESS The device was successfully > > updated with the new image. > > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was > too > > small. The current buffer size > > needed to hold the image(s) > > information is returned in ImageInfoSize. > > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > > and ImageInfo is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > DescriptorVersion is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > DescriptorCount is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > DescriptorSize is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > PackageVersion is NULL. > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > PackageVersionName is NULL. > > @retval EFI_DEVICE_ERROR Valid information could not > be > > returned. Possible corrupted image. > > > > **/ > > @@ -341,6 +348,9 @@ EFI_STATUS > > @param[in] ImageIndex A unique number identifying the > > firmware image(s) within the device. > > The number is between 1 and > > DescriptorCount. > > @param[out] Image Points to the buffer where the > > current image is copied to. > > + May be NULL with a zero > ImageSize in > > order to determine the size of the > > + buffer needed. > > + > > @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. > > > > @@ -348,7 +358,7 @@ EFI_STATUS > > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize > is > > too small to hold the > > image. The current buffer size > > needed to hold the image is returned > > in ImageSize. > > - @retval EFI_INVALID_PARAMETER The Image was NULL. > > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > > Image is NULL. > > @retval EFI_NOT_FOUND The current image is not copied > to > > the buffer. > > @retval EFI_UNSUPPORTED The operation is not supported. > > @retval EFI_SECURITY_VIOLATION The operation could not be > performed > > due to an authentication failure. > > -- > > 2.38.1.windows.1 > > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#118868): https://edk2.groups.io/g/devel/message/118868 Mute This Topic: https://groups.io/mt/106075537/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* 回复: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details 2024-05-13 12:09 ` Pethaiyan, Madhan @ 2024-05-13 13:11 ` gaoliming via groups.io 0 siblings, 0 replies; 8+ messages in thread From: gaoliming via groups.io @ 2024-05-13 13:11 UTC (permalink / raw) To: 'Pethaiyan, Madhan', 'Kinney, Michael D', devel Cc: 'Liu, Zhiguang', 'Li, Yi1', 'GuoX Xu' These PRs are all failure. Please update them. Thanks Liming > -----邮件原件----- > 发件人: Pethaiyan, Madhan <madhan.pethaiyan@intel.com> > 发送时间: 2024年5月13日 20:10 > 收件人: gaoliming <gaoliming@byosoft.com.cn>; Kinney, Michael D > <michael.d.kinney@intel.com>; devel@edk2.groups.io > 抄送: Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; 'GuoX > Xu' <guox.xu@intel.com> > 主题: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo > description details > > Hi all , > > I had created EDK2 PR, few weeks ago, thought it will be reviewed and approved . > Please help to check and approve. > > https://github.com/tianocore/edk2/pull/5584 > https://github.com/tianocore/edk2/pull/5586 > https://github.com/tianocore/edk2/pull/5587 > > Thanks, > P. Madhan > > -----Original Message----- > From: gaoliming <gaoliming@byosoft.com.cn> > Sent: Thursday, March 28, 2024 6:41 AM > To: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael D > <michael.d.kinney@intel.com>; devel@edk2.groups.io > Cc: Liu, Zhiguang <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; 'GuoX Xu' > <guox.xu@intel.com> > Subject: 回复: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > GetImageInfo description details > > Madhan: > I have no comments for this patch set. Reviewed-by: Liming Gao > <gaoliming@byosoft.com.cn> > > Have you create Edk2 PR to verify the changes? > > Thanks > Liming > > -----邮件原件----- > > 发件人: Pethaiyan, Madhan <madhan.pethaiyan@intel.com> > > 发送时间: 2024年3月14日 16:17 > > 收件人: Kinney, Michael D <michael.d.kinney@intel.com>; > > devel@edk2.groups.io > > 抄送: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang > > <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu > > <guox.xu@intel.com> > > 主题: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo > > description details > > > > Hi Mike , > > > > I had raised new code review addressing the coding standard errors and > those > > were not part of my change any way .. > > > > Thanks, > > P. Madhan > > > > -----Original Message----- > > From: Kinney, Michael D <michael.d.kinney@intel.com> > > Sent: Sunday, March 10, 2024 1:47 AM > > To: devel@edk2.groups.io; Pethaiyan, Madhan > > <madhan.pethaiyan@intel.com> > > Cc: Liming Gao <gaoliming@byosoft.com.cn>; Liu, Zhiguang > > <zhiguang.liu@intel.com>; Li, Yi1 <yi1.li@intel.com>; GuoX Xu > > <guox.xu@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> > > Subject: RE: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > > GetImageInfo description details > > > > Hi Madhan, > > > > I created a PR with all 3 related patches to run through EDK II CI. > > > > https://github.com/tianocore/edk2/pull/5453 > > > > There are CI failures. Please resolve and send updated patches. > > > > Thanks, > > > > Mike > > > > > -----Original Message----- > > > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > > > Pethaiyan Madhan > > > Sent: Friday, March 8, 2024 3:17 PM > > > To: devel@edk2.groups.io > > > Cc: Pethaiyan, Madhan <madhan.pethaiyan@intel.com>; Kinney, Michael > > > D <michael.d.kinney@intel.com>; Liming Gao > > > <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; > > > Li, Yi1 <yi1.li@intel.com>; GuoX Xu <guox.xu@intel.com> > > > Subject: [edk2-devel] [PATCH V1] MdePkg: Update GetImage , > > > GetImageInfo description details > > > > > > 1.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImage(): > > > Add the following sentence at the end of the Image parameter > > > description. "May be NULL with a zero ImageSize in order to > > > determine the size of the buffer needed". > > > > > > Modify the description of "EFI_INVALID_PARAMETER" return code as > > > "The ImageSize is not too small and Image is NULL." > > > > > > 2.For EFI_FIRMWARE_MANAGEMENT_PROTOCOL.GetImageInfo(): > > > Add the following sentence at the end of the ImageInfo parameter > > > description."May be NULL with a zero ImageInfoSize in order to > > > determine the size of the buffer needed". > > > > > > Modify the description of "EFI_INVALID_PARAMETER" return code as > > > "The ImageInfoSize is not too small and Image is NULL." and add new > > > descriptions for "EFI_INVALID_PARAMETER" return code. > > > > > > REF: UEFI spec v2.10 23.1.2 > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4660 > > > > > > Cc: Michael D Kinney <michael.d.kinney@intel.com> > > > Cc: Liming Gao <gaoliming@byosoft.com.cn> > > > Cc: Zhiguang Liu <zhiguang.liu@intel.com> > > > Cc: Yi Li <yi1.li@intel.com> > > > Cc: GuoX Xu <guox.xu@intel.com> > > > Signed-off-by: Pethaiyan Madhan <madhan.pethaiyan@intel.com> > > > --- > > > MdePkg/Include/Protocol/FirmwareManagement.h | 14 ++++++++++++-- > > > 1 file changed, 12 insertions(+), 2 deletions(-) > > > > > > diff --git a/MdePkg/Include/Protocol/FirmwareManagement.h > > > b/MdePkg/Include/Protocol/FirmwareManagement.h > > > index e535bb697d..90b7d83c8f 100644 > > > --- a/MdePkg/Include/Protocol/FirmwareManagement.h > > > +++ b/MdePkg/Include/Protocol/FirmwareManagement.h > > > @@ -294,6 +294,8 @@ EFI_STATUS > > > to contain the image(s) > > > information if the buffer was too small. > > > @param[in, out] ImageInfo A pointer to the buffer in which > > > firmware places the current image(s) > > > information. The > > information is > > > an array of EFI_FIRMWARE_IMAGE_DESCRIPTORs. > > > + May be NULL with a zero > > > ImageInfoSize in order to determine the size of the > > > + buffer needed. > > > @param[out] DescriptorVersion A pointer to the location in > > > which firmware returns the version number > > > associated with the > > > EFI_FIRMWARE_IMAGE_DESCRIPTOR. > > > @param[out] DescriptorCount A pointer to the location in > > > which firmware returns the number of @@ -314,7 +316,12 @@ EFI_STATUS > > > @retval EFI_SUCCESS The device was successfully > > > updated with the new image. > > > @retval EFI_BUFFER_TOO_SMALL The ImageInfo buffer was > > too > > > small. The current buffer size > > > needed to hold the image(s) > > > information is returned in ImageInfoSize. > > > - @retval EFI_INVALID_PARAMETER ImageInfoSize is NULL. > > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is not too small > > > and ImageInfo is NULL. > > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > > DescriptorVersion is NULL. > > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > > DescriptorCount is NULL. > > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > > DescriptorSize is NULL. > > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > > PackageVersion is NULL. > > > + @retval EFI_INVALID_PARAMETER ImageInfoSize is non-zero and > > > PackageVersionName is NULL. > > > @retval EFI_DEVICE_ERROR Valid information could not > > be > > > returned. Possible corrupted image. > > > > > > **/ > > > @@ -341,6 +348,9 @@ EFI_STATUS > > > @param[in] ImageIndex A unique number identifying the > > > firmware image(s) within the device. > > > The number is between 1 and > > > DescriptorCount. > > > @param[out] Image Points to the buffer where the > > > current image is copied to. > > > + May be NULL with a zero > > ImageSize in > > > order to determine the size of the > > > + buffer needed. > > > + > > > @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. > > > > > > @@ -348,7 +358,7 @@ EFI_STATUS > > > @retval EFI_BUFFER_TOO_SMALL The buffer specified by ImageSize > > is > > > too small to hold the > > > image. The current buffer size > > > needed to hold the image is returned > > > in ImageSize. > > > - @retval EFI_INVALID_PARAMETER The Image was NULL. > > > + @retval EFI_INVALID_PARAMETER The ImageSize is not too small and > > > Image is NULL. > > > @retval EFI_NOT_FOUND The current image is not copied > > to > > > the buffer. > > > @retval EFI_UNSUPPORTED The operation is not supported. > > > @retval EFI_SECURITY_VIOLATION The operation could not be > > performed > > > due to an authentication failure. > > > -- > > > 2.38.1.windows.1 > > > > > > > > > > > > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#118863): https://edk2.groups.io/g/devel/message/118863 Mute This Topic: https://groups.io/mt/105189505/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-05-13 15:43 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-03-08 23:16 [edk2-devel] [PATCH V1] MdePkg: Update GetImage , GetImageInfo description details Pethaiyan Madhan 2024-03-09 19:34 ` Michael D Kinney 2024-03-09 20:17 ` Michael D Kinney 2024-03-14 8:16 ` Pethaiyan, Madhan 2024-03-26 5:51 ` Pethaiyan, Madhan 2024-03-28 1:10 ` 回复: " gaoliming via groups.io 2024-05-13 12:09 ` Pethaiyan, Madhan 2024-05-13 13:11 ` 回复: " gaoliming via groups.io
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox