[edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload

Ni, Ray posted 3 patches 4 years, 8 months ago
There is a newer version of this series
[edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload
Posted by Ni, Ray 4 years, 8 months ago
The payload is in ELF format per the universal payload spec.
PLD_INFO_HEADER is stored in the ELF payload as a separate section
named ".upld_info".

Extra data needed by payload is stored in sections whose name starts
with ".upld.".

Signed-off-by: Ray Ni <ray.ni@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Guo Dong <guo.dong@intel.com>
---
 .../Include/UniversalPayload/ExtraData.h      | 28 ++++++++++++++
 .../UniversalPayload/UniversalPayload.h       | 38 +++++++++++++++++++
 MdeModulePkg/MdeModulePkg.dec                 |  3 ++
 3 files changed, 69 insertions(+)
 create mode 100644 MdeModulePkg/Include/UniversalPayload/ExtraData.h
 create mode 100644 MdeModulePkg/Include/UniversalPayload/UniversalPayload.h

diff --git a/MdeModulePkg/Include/UniversalPayload/ExtraData.h b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
new file mode 100644
index 0000000000..07b7426683
--- /dev/null
+++ b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
@@ -0,0 +1,28 @@
+/** @file
+
+  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+#ifndef __EXTRA_DATA_H__
+#define __EXTRA_DATA_H__
+
+extern GUID gPldExtraDataGuid;
+
+#pragma pack(1)
+
+typedef struct {
+  CHAR8                   Identifier[16];
+  EFI_PHYSICAL_ADDRESS    Base;
+  UINT64                  Size;
+} PLD_EXTRA_DATA_ENTRY;
+
+typedef struct {
+  PLD_GENERIC_HEADER     PldHeader;
+  UINT32                 Count;
+  PLD_EXTRA_DATA_ENTRY   Entry[0];
+} PLD_EXTRA_DATA;
+
+#pragma pack()
+
+#endif
diff --git a/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
new file mode 100644
index 0000000000..b8e9fe11a1
--- /dev/null
+++ b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
@@ -0,0 +1,38 @@
+/** @file
+
+  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+#ifndef __UNIVERSAL_PAYLOAD_H__
+#define __UNIVERSAL_PAYLOAD_H__
+
+typedef  VOID   (EFIAPI *UNIVERSAL_PAYLOAD_ENTRY) (VOID *HobList);
+
+#define PLD_IDENTIFIER                   SIGNATURE_32('U', 'P', 'L', 'D')
+#define PLD_INFO_SEC_NAME                ".upld_info"
+#define PLD_EXTRA_SEC_NAME_PREFIX        ".upld."
+#define PLD_EXTRA_SEC_NAME_PREFIX_LENGTH (sizeof (PLD_EXTRA_SEC_NAME_PREFIX) - 1)
+
+#pragma pack(1)
+
+typedef struct {
+  UINT32                          Identifier;
+  UINT32                          HeaderLength;
+  UINT16                          SpecRevision;
+  UINT8                           Reserved[2];
+  UINT32                          Revision;
+  UINT32                          Attribute;
+  UINT32                          Capability;
+  CHAR8                           ProducerId[16];
+  CHAR8                           ImageId[16];
+} PLD_INFO_HEADER;
+
+typedef struct {
+  UINT8 Revision;
+  UINT8 Reserved[3];
+} PLD_GENERIC_HEADER;
+
+#pragma pack()
+
+#endif
diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec
index 8d38383915..d823ad0ba7 100644
--- a/MdeModulePkg/MdeModulePkg.dec
+++ b/MdeModulePkg/MdeModulePkg.dec
@@ -404,6 +404,9 @@ [Guids]
   ## Include/Guid/MigratedFvInfo.h
   gEdkiiMigratedFvInfoGuid = { 0xc1ab12f7, 0x74aa, 0x408d, { 0xa2, 0xf4, 0xc6, 0xce, 0xfd, 0x17, 0x98, 0x71 } }
 
+  ## Include/UniversalPayload/ExtraData.h
+  gPldExtraDataGuid = {0x15a5baf6, 0x1c91, 0x467d, {0x9d, 0xfb, 0x31, 0x9d, 0x17, 0x8d, 0x4b, 0xb4}}
+
 [Ppis]
   ## Include/Ppi/AtaController.h
   gPeiAtaControllerPpiGuid       = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0, 0x7a, 0xaa, 0x77, 0x7f, 0x85, 0x90, 0x6d }}
-- 
2.31.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76009): https://edk2.groups.io/g/devel/message/76009
Mute This Topic: https://groups.io/mt/83277975/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload
Posted by Wu, Hao A 4 years, 8 months ago
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Ni, Ray
> Sent: Thursday, June 3, 2021 2:23 PM
> To: devel@edk2.groups.io
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Ma,
> Maurice <maurice.ma@intel.com>; Dong, Guo <guo.dong@intel.com>
> Subject: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add
> definition for extra info in payload
> 
> The payload is in ELF format per the universal payload spec.
> PLD_INFO_HEADER is stored in the ELF payload as a separate section named
> ".upld_info".
> 
> Extra data needed by payload is stored in sections whose name starts with
> ".upld.".


Hello Ray and Zhiguang,

There are a couple of on-going patch series on UniversalPayload.
Since the specifications for UniversalPayload does not classified as industry
standard at this moment, some definitions will be placed under MdeModulePkg.

I have a request to update the MdeModulePkg part of the Maintainers.txt file
to list the reviewers for these UniversalPayload header files as well as those
UniversalPayload related implementation source files.

For the timing of this Maintainers.txt file change, I am fine with either:
  a) Made in one of the UniversalPayload related patch series
  b) Made after all the implementations are completed

Best Regards,
Hao Wu


> 
> Signed-off-by: Ray Ni <ray.ni@intel.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> Cc: Maurice Ma <maurice.ma@intel.com>
> Cc: Guo Dong <guo.dong@intel.com>
> ---
>  .../Include/UniversalPayload/ExtraData.h      | 28 ++++++++++++++
>  .../UniversalPayload/UniversalPayload.h       | 38 +++++++++++++++++++
>  MdeModulePkg/MdeModulePkg.dec                 |  3 ++
>  3 files changed, 69 insertions(+)
>  create mode 100644 MdeModulePkg/Include/UniversalPayload/ExtraData.h
>  create mode 100644
> MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> 
> diff --git a/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> new file mode 100644
> index 0000000000..07b7426683
> --- /dev/null
> +++ b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> @@ -0,0 +1,28 @@
> +/** @file++  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>+
> SPDX-License-Identifier: BSD-2-Clause-Patent++**/+#ifndef
> __EXTRA_DATA_H__+#define __EXTRA_DATA_H__++extern GUID
> gPldExtraDataGuid;++#pragma pack(1)++typedef struct {+  CHAR8
> Identifier[16];+  EFI_PHYSICAL_ADDRESS    Base;+  UINT64                  Size;+}
> PLD_EXTRA_DATA_ENTRY;++typedef struct {+  PLD_GENERIC_HEADER
> PldHeader;+  UINT32                 Count;+  PLD_EXTRA_DATA_ENTRY   Entry[0];+}
> PLD_EXTRA_DATA;++#pragma pack()++#endifdiff --git
> a/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> new file mode 100644
> index 0000000000..b8e9fe11a1
> --- /dev/null
> +++ b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> @@ -0,0 +1,38 @@
> +/** @file++  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>+
> SPDX-License-Identifier: BSD-2-Clause-Patent++**/+#ifndef
> __UNIVERSAL_PAYLOAD_H__+#define
> __UNIVERSAL_PAYLOAD_H__++typedef  VOID   (EFIAPI
> *UNIVERSAL_PAYLOAD_ENTRY) (VOID *HobList);++#define PLD_IDENTIFIER
> SIGNATURE_32('U', 'P', 'L', 'D')+#define PLD_INFO_SEC_NAME
> ".upld_info"+#define PLD_EXTRA_SEC_NAME_PREFIX        ".upld."+#define
> PLD_EXTRA_SEC_NAME_PREFIX_LENGTH (sizeof
> (PLD_EXTRA_SEC_NAME_PREFIX) - 1)++#pragma pack(1)++typedef struct {+
> UINT32                          Identifier;+  UINT32                          HeaderLength;+
> UINT16                          SpecRevision;+  UINT8                           Reserved[2];+
> UINT32                          Revision;+  UINT32                          Attribute;+  UINT32
> Capability;+  CHAR8                           ProducerId[16];+  CHAR8
> ImageId[16];+} PLD_INFO_HEADER;++typedef struct {+  UINT8 Revision;+
> UINT8 Reserved[3];+} PLD_GENERIC_HEADER;++#pragma pack()++#endifdiff
> --git a/MdeModulePkg/MdeModulePkg.dec
> b/MdeModulePkg/MdeModulePkg.dec
> index 8d38383915..d823ad0ba7 100644
> --- a/MdeModulePkg/MdeModulePkg.dec
> +++ b/MdeModulePkg/MdeModulePkg.dec
> @@ -404,6 +404,9 @@ [Guids]
>    ## Include/Guid/MigratedFvInfo.h   gEdkiiMigratedFvInfoGuid =
> { 0xc1ab12f7, 0x74aa, 0x408d, { 0xa2, 0xf4, 0xc6, 0xce, 0xfd, 0x17, 0x98,
> 0x71 } } +  ## Include/UniversalPayload/ExtraData.h+  gPldExtraDataGuid =
> {0x15a5baf6, 0x1c91, 0x467d, {0x9d, 0xfb, 0x31, 0x9d, 0x17, 0x8d, 0x4b,
> 0xb4}}+ [Ppis]   ## Include/Ppi/AtaController.h   gPeiAtaControllerPpiGuid
> = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0, 0x7a, 0xaa, 0x77, 0x7f, 0x85, 0x90,
> 0x6d }}--
> 2.31.1.windows.1
> 
> 
> 
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#76009): https://edk2.groups.io/g/devel/message/76009
> Mute This Topic: https://groups.io/mt/83277975/1768737
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub [hao.a.wu@intel.com] -
> =-=-=-=-=-=
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76012): https://edk2.groups.io/g/devel/message/76012
Mute This Topic: https://groups.io/mt/83277975/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload
Posted by Ni, Ray 4 years, 8 months ago
Hao,
Sure. I will send patch to change Maintainers.txt putting Zhiguang and me on the reviewer list for Include/UniversalPayload after this is merged.

For the specific changes in AcpiTableDxe and SmbiosDxe, I will discuss with Zhiguang and send changes to append him on reviewer list of ACPI Modules and SMBIOS Modules.

Ok to you?

Thanks,
Ray

> -----Original Message-----
> From: Wu, Hao A <hao.a.wu@intel.com>
> Sent: Thursday, June 3, 2021 2:37 PM
> To: devel@edk2.groups.io; Ni, Ray <ray.ni@intel.com>; Liu, Zhiguang
> <zhiguang.liu@intel.com>
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Ma, Maurice <maurice.ma@intel.com>; Dong,
> Guo <guo.dong@intel.com>
> Subject: RE: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add
> definition for extra info in payload
> 
> > -----Original Message-----
> > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Ni, Ray
> > Sent: Thursday, June 3, 2021 2:23 PM
> > To: devel@edk2.groups.io
> > Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> > <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Ma,
> > Maurice <maurice.ma@intel.com>; Dong, Guo <guo.dong@intel.com>
> > Subject: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add
> > definition for extra info in payload
> >
> > The payload is in ELF format per the universal payload spec.
> > PLD_INFO_HEADER is stored in the ELF payload as a separate section named
> > ".upld_info".
> >
> > Extra data needed by payload is stored in sections whose name starts with
> > ".upld.".
> 
> 
> Hello Ray and Zhiguang,
> 
> There are a couple of on-going patch series on UniversalPayload.
> Since the specifications for UniversalPayload does not classified as industry
> standard at this moment, some definitions will be placed under MdeModulePkg.
> 
> I have a request to update the MdeModulePkg part of the Maintainers.txt file
> to list the reviewers for these UniversalPayload header files as well as those
> UniversalPayload related implementation source files.
> 
> For the timing of this Maintainers.txt file change, I am fine with either:
>   a) Made in one of the UniversalPayload related patch series
>   b) Made after all the implementations are completed
> 
> Best Regards,
> Hao Wu
> 
> 
> >
> > Signed-off-by: Ray Ni <ray.ni@intel.com>
> > Cc: Michael D Kinney <michael.d.kinney@intel.com>
> > Cc: Liming Gao <gaoliming@byosoft.com.cn>
> > Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> > Cc: Maurice Ma <maurice.ma@intel.com>
> > Cc: Guo Dong <guo.dong@intel.com>
> > ---
> >  .../Include/UniversalPayload/ExtraData.h      | 28 ++++++++++++++
> >  .../UniversalPayload/UniversalPayload.h       | 38 +++++++++++++++++++
> >  MdeModulePkg/MdeModulePkg.dec                 |  3 ++
> >  3 files changed, 69 insertions(+)
> >  create mode 100644 MdeModulePkg/Include/UniversalPayload/ExtraData.h
> >  create mode 100644
> > MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> >
> > diff --git a/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > new file mode 100644
> > index 0000000000..07b7426683
> > --- /dev/null
> > +++ b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > @@ -0,0 +1,28 @@
> > +/** @file++  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>+
> > SPDX-License-Identifier: BSD-2-Clause-Patent++**/+#ifndef
> > __EXTRA_DATA_H__+#define __EXTRA_DATA_H__++extern GUID
> > gPldExtraDataGuid;++#pragma pack(1)++typedef struct {+  CHAR8
> > Identifier[16];+  EFI_PHYSICAL_ADDRESS    Base;+  UINT64                  Size;+}
> > PLD_EXTRA_DATA_ENTRY;++typedef struct {+  PLD_GENERIC_HEADER
> > PldHeader;+  UINT32                 Count;+  PLD_EXTRA_DATA_ENTRY   Entry[0];+}
> > PLD_EXTRA_DATA;++#pragma pack()++#endifdiff --git
> > a/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > new file mode 100644
> > index 0000000000..b8e9fe11a1
> > --- /dev/null
> > +++ b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > @@ -0,0 +1,38 @@
> > +/** @file++  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>+
> > SPDX-License-Identifier: BSD-2-Clause-Patent++**/+#ifndef
> > __UNIVERSAL_PAYLOAD_H__+#define
> > __UNIVERSAL_PAYLOAD_H__++typedef  VOID   (EFIAPI
> > *UNIVERSAL_PAYLOAD_ENTRY) (VOID *HobList);++#define PLD_IDENTIFIER
> > SIGNATURE_32('U', 'P', 'L', 'D')+#define PLD_INFO_SEC_NAME
> > ".upld_info"+#define PLD_EXTRA_SEC_NAME_PREFIX        ".upld."+#define
> > PLD_EXTRA_SEC_NAME_PREFIX_LENGTH (sizeof
> > (PLD_EXTRA_SEC_NAME_PREFIX) - 1)++#pragma pack(1)++typedef struct {+
> > UINT32                          Identifier;+  UINT32                          HeaderLength;+
> > UINT16                          SpecRevision;+  UINT8                           Reserved[2];+
> > UINT32                          Revision;+  UINT32                          Attribute;+  UINT32
> > Capability;+  CHAR8                           ProducerId[16];+  CHAR8
> > ImageId[16];+} PLD_INFO_HEADER;++typedef struct {+  UINT8 Revision;+
> > UINT8 Reserved[3];+} PLD_GENERIC_HEADER;++#pragma pack()++#endifdiff
> > --git a/MdeModulePkg/MdeModulePkg.dec
> > b/MdeModulePkg/MdeModulePkg.dec
> > index 8d38383915..d823ad0ba7 100644
> > --- a/MdeModulePkg/MdeModulePkg.dec
> > +++ b/MdeModulePkg/MdeModulePkg.dec
> > @@ -404,6 +404,9 @@ [Guids]
> >    ## Include/Guid/MigratedFvInfo.h   gEdkiiMigratedFvInfoGuid =
> > { 0xc1ab12f7, 0x74aa, 0x408d, { 0xa2, 0xf4, 0xc6, 0xce, 0xfd, 0x17, 0x98,
> > 0x71 } } +  ## Include/UniversalPayload/ExtraData.h+  gPldExtraDataGuid =
> > {0x15a5baf6, 0x1c91, 0x467d, {0x9d, 0xfb, 0x31, 0x9d, 0x17, 0x8d, 0x4b,
> > 0xb4}}+ [Ppis]   ## Include/Ppi/AtaController.h   gPeiAtaControllerPpiGuid
> > = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0, 0x7a, 0xaa, 0x77, 0x7f, 0x85, 0x90,
> > 0x6d }}--
> > 2.31.1.windows.1
> >
> >
> >
> > -=-=-=-=-=-=
> > Groups.io Links: You receive all messages sent to this group.
> > View/Reply Online (#76009): https://edk2.groups.io/g/devel/message/76009
> > Mute This Topic: https://groups.io/mt/83277975/1768737
> > Group Owner: devel+owner@edk2.groups.io
> > Unsubscribe: https://edk2.groups.io/g/devel/unsub [hao.a.wu@intel.com] -
> > =-=-=-=-=-=
> >



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76026): https://edk2.groups.io/g/devel/message/76026
Mute This Topic: https://groups.io/mt/83277975/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload
Posted by Wu, Hao A 4 years, 8 months ago
Hello Ray,

Yes, it looks to good me. Thanks a lot for the support.

Best Regards,
Hao Wu

> -----Original Message-----
> From: Ni, Ray <ray.ni@intel.com>
> Sent: Friday, June 4, 2021 9:01 AM
> To: Wu, Hao A <hao.a.wu@intel.com>; devel@edk2.groups.io; Liu, Zhiguang
> <zhiguang.liu@intel.com>
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Ma, Maurice <maurice.ma@intel.com>; Dong,
> Guo <guo.dong@intel.com>
> Subject: RE: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload:
> Add definition for extra info in payload
> 
> Hao,
> Sure. I will send patch to change Maintainers.txt putting Zhiguang and me on
> the reviewer list for Include/UniversalPayload after this is merged.
> 
> For the specific changes in AcpiTableDxe and SmbiosDxe, I will discuss with
> Zhiguang and send changes to append him on reviewer list of ACPI Modules
> and SMBIOS Modules.
> 
> Ok to you?
> 
> Thanks,
> Ray
> 
> > -----Original Message-----
> > From: Wu, Hao A <hao.a.wu@intel.com>
> > Sent: Thursday, June 3, 2021 2:37 PM
> > To: devel@edk2.groups.io; Ni, Ray <ray.ni@intel.com>; Liu, Zhiguang
> > <zhiguang.liu@intel.com>
> > Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> > <gaoliming@byosoft.com.cn>; Ma, Maurice <maurice.ma@intel.com>;
> Dong,
> > Guo <guo.dong@intel.com>
> > Subject: RE: [edk2-devel] [PATCH v2 1/3]
> > MdeModulePkg/UniversalPayload: Add definition for extra info in
> > payload
> >
> > > -----Original Message-----
> > > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Ni,
> > > Ray
> > > Sent: Thursday, June 3, 2021 2:23 PM
> > > To: devel@edk2.groups.io
> > > Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> > > <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>;
> > > Ma, Maurice <maurice.ma@intel.com>; Dong, Guo
> <guo.dong@intel.com>
> > > Subject: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload:
> > > Add definition for extra info in payload
> > >
> > > The payload is in ELF format per the universal payload spec.
> > > PLD_INFO_HEADER is stored in the ELF payload as a separate section
> > > named ".upld_info".
> > >
> > > Extra data needed by payload is stored in sections whose name starts
> > > with ".upld.".
> >
> >
> > Hello Ray and Zhiguang,
> >
> > There are a couple of on-going patch series on UniversalPayload.
> > Since the specifications for UniversalPayload does not classified as
> > industry standard at this moment, some definitions will be placed under
> MdeModulePkg.
> >
> > I have a request to update the MdeModulePkg part of the
> > Maintainers.txt file to list the reviewers for these UniversalPayload
> > header files as well as those UniversalPayload related implementation
> source files.
> >
> > For the timing of this Maintainers.txt file change, I am fine with either:
> >   a) Made in one of the UniversalPayload related patch series
> >   b) Made after all the implementations are completed
> >
> > Best Regards,
> > Hao Wu
> >
> >
> > >
> > > Signed-off-by: Ray Ni <ray.ni@intel.com>
> > > Cc: Michael D Kinney <michael.d.kinney@intel.com>
> > > Cc: Liming Gao <gaoliming@byosoft.com.cn>
> > > Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> > > Cc: Maurice Ma <maurice.ma@intel.com>
> > > Cc: Guo Dong <guo.dong@intel.com>
> > > ---
> > >  .../Include/UniversalPayload/ExtraData.h      | 28 ++++++++++++++
> > >  .../UniversalPayload/UniversalPayload.h       | 38
> +++++++++++++++++++
> > >  MdeModulePkg/MdeModulePkg.dec                 |  3 ++
> > >  3 files changed, 69 insertions(+)
> > >  create mode 100644
> > > MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > >  create mode 100644
> > > MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > >
> > > diff --git a/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > > b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > > new file mode 100644
> > > index 0000000000..07b7426683
> > > --- /dev/null
> > > +++ b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> > > @@ -0,0 +1,28 @@
> > > +/** @file++  Copyright (c) 2021, Intel Corporation. All rights
> > > +reserved.<BR>+
> > > SPDX-License-Identifier: BSD-2-Clause-Patent++**/+#ifndef
> > > __EXTRA_DATA_H__+#define __EXTRA_DATA_H__++extern GUID
> > > gPldExtraDataGuid;++#pragma pack(1)++typedef struct {+  CHAR8
> > > Identifier[16];+  EFI_PHYSICAL_ADDRESS    Base;+  UINT64                  Size;+}
> > > PLD_EXTRA_DATA_ENTRY;++typedef struct {+  PLD_GENERIC_HEADER
> > > PldHeader;+  UINT32                 Count;+  PLD_EXTRA_DATA_ENTRY
> Entry[0];+}
> > > PLD_EXTRA_DATA;++#pragma pack()++#endifdiff --git
> > > a/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > > b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > > new file mode 100644
> > > index 0000000000..b8e9fe11a1
> > > --- /dev/null
> > > +++ b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> > > @@ -0,0 +1,38 @@
> > > +/** @file++  Copyright (c) 2021, Intel Corporation. All rights
> > > +reserved.<BR>+
> > > SPDX-License-Identifier: BSD-2-Clause-Patent++**/+#ifndef
> > > __UNIVERSAL_PAYLOAD_H__+#define
> > > __UNIVERSAL_PAYLOAD_H__++typedef  VOID   (EFIAPI
> > > *UNIVERSAL_PAYLOAD_ENTRY) (VOID *HobList);++#define
> PLD_IDENTIFIER
> > > SIGNATURE_32('U', 'P', 'L', 'D')+#define PLD_INFO_SEC_NAME
> > > ".upld_info"+#define PLD_EXTRA_SEC_NAME_PREFIX
> ".upld."+#define
> > > PLD_EXTRA_SEC_NAME_PREFIX_LENGTH (sizeof
> > > (PLD_EXTRA_SEC_NAME_PREFIX) - 1)++#pragma pack(1)++typedef
> struct {+
> > > UINT32                          Identifier;+  UINT32                          HeaderLength;+
> > > UINT16                          SpecRevision;+  UINT8                           Reserved[2];+
> > > UINT32                          Revision;+  UINT32                          Attribute;+  UINT32
> > > Capability;+  CHAR8                           ProducerId[16];+  CHAR8
> > > ImageId[16];+} PLD_INFO_HEADER;++typedef struct {+  UINT8 Revision;+
> > > UINT8 Reserved[3];+} PLD_GENERIC_HEADER;++#pragma
> pack()++#endifdiff
> > > --git a/MdeModulePkg/MdeModulePkg.dec
> > > b/MdeModulePkg/MdeModulePkg.dec index 8d38383915..d823ad0ba7
> 100644
> > > --- a/MdeModulePkg/MdeModulePkg.dec
> > > +++ b/MdeModulePkg/MdeModulePkg.dec
> > > @@ -404,6 +404,9 @@ [Guids]
> > >    ## Include/Guid/MigratedFvInfo.h   gEdkiiMigratedFvInfoGuid =
> > > { 0xc1ab12f7, 0x74aa, 0x408d, { 0xa2, 0xf4, 0xc6, 0xce, 0xfd, 0x17,
> > > 0x98,
> > > 0x71 } } +  ## Include/UniversalPayload/ExtraData.h+
> > > gPldExtraDataGuid = {0x15a5baf6, 0x1c91, 0x467d, {0x9d, 0xfb, 0x31, 0x9d,
> 0x17, 0x8d, 0x4b,
> > > 0xb4}}+ [Ppis]   ## Include/Ppi/AtaController.h   gPeiAtaControllerPpiGuid
> > > = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0, 0x7a, 0xaa, 0x77, 0x7f,
> > > 0x85, 0x90, 0x6d }}--
> > > 2.31.1.windows.1
> > >
> > >
> > >
> > > -=-=-=-=-=-=
> > > Groups.io Links: You receive all messages sent to this group.
> > > View/Reply Online (#76009):
> > > https://edk2.groups.io/g/devel/message/76009
> > > Mute This Topic: https://groups.io/mt/83277975/1768737
> > > Group Owner: devel+owner@edk2.groups.io
> > > Unsubscribe: https://edk2.groups.io/g/devel/unsub
> > > [hao.a.wu@intel.com] - =-=-=-=-=-=
> > >



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76027): https://edk2.groups.io/g/devel/message/76027
Mute This Topic: https://groups.io/mt/83277975/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload
Posted by Ni, Ray 4 years, 8 months ago
Hao,
Can you give a R-b for this patch and the other one that changes PeiCore?


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76120): https://edk2.groups.io/g/devel/message/76120
Mute This Topic: https://groups.io/mt/83277975/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add definition for extra info in payload
Posted by Wu, Hao A 4 years, 8 months ago
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Ni, Ray
> Sent: Thursday, June 3, 2021 2:23 PM
> To: devel@edk2.groups.io
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Ma,
> Maurice <maurice.ma@intel.com>; Dong, Guo <guo.dong@intel.com>
> Subject: [edk2-devel] [PATCH v2 1/3] MdeModulePkg/UniversalPayload: Add
> definition for extra info in payload
> 
> The payload is in ELF format per the universal payload spec.
> PLD_INFO_HEADER is stored in the ELF payload as a separate section
> named ".upld_info".
> 
> Extra data needed by payload is stored in sections whose name starts
> with ".upld.".
> 
> Signed-off-by: Ray Ni <ray.ni@intel.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> Cc: Maurice Ma <maurice.ma@intel.com>
> Cc: Guo Dong <guo.dong@intel.com>
> ---
>  .../Include/UniversalPayload/ExtraData.h      | 28 ++++++++++++++
>  .../UniversalPayload/UniversalPayload.h       | 38 +++++++++++++++++++
>  MdeModulePkg/MdeModulePkg.dec                 |  3 ++
>  3 files changed, 69 insertions(+)
>  create mode 100644 MdeModulePkg/Include/UniversalPayload/ExtraData.h
>  create mode 100644
> MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> 
> diff --git a/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> new file mode 100644
> index 0000000000..07b7426683
> --- /dev/null
> +++ b/MdeModulePkg/Include/UniversalPayload/ExtraData.h
> @@ -0,0 +1,28 @@
> +/** @file
> 
> +
> 
> +  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
> 
> +  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
> +
> 
> +**/
> 
> +#ifndef __EXTRA_DATA_H__
> 
> +#define __EXTRA_DATA_H__
> 
> +
> 
> +extern GUID gPldExtraDataGuid;
> 
> +
> 
> +#pragma pack(1)
> 
> +
> 
> +typedef struct {
> 
> +  CHAR8                   Identifier[16];
> 
> +  EFI_PHYSICAL_ADDRESS    Base;
> 
> +  UINT64                  Size;
> 
> +} PLD_EXTRA_DATA_ENTRY;
> 
> +
> 
> +typedef struct {
> 
> +  PLD_GENERIC_HEADER     PldHeader;
> 
> +  UINT32                 Count;
> 
> +  PLD_EXTRA_DATA_ENTRY   Entry[0];
> 
> +} PLD_EXTRA_DATA;
> 
> +
> 
> +#pragma pack()
> 
> +
> 
> +#endif
> 
> diff --git a/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> new file mode 100644
> index 0000000000..b8e9fe11a1
> --- /dev/null
> +++ b/MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
> @@ -0,0 +1,38 @@
> +/** @file
> 
> +
> 
> +  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
> 
> +  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
> +
> 
> +**/
> 
> +#ifndef __UNIVERSAL_PAYLOAD_H__
> 
> +#define __UNIVERSAL_PAYLOAD_H__
> 
> +
> 
> +typedef  VOID   (EFIAPI *UNIVERSAL_PAYLOAD_ENTRY) (VOID *HobList);


Do we need to add function and input parameter description comments for the above 'typedef' like others in the codebase?

With this handled,
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>

Best Regards,
Hao Wu


> 
> +
> 
> +#define PLD_IDENTIFIER                   SIGNATURE_32('U', 'P', 'L', 'D')
> 
> +#define PLD_INFO_SEC_NAME                ".upld_info"
> 
> +#define PLD_EXTRA_SEC_NAME_PREFIX        ".upld."
> 
> +#define PLD_EXTRA_SEC_NAME_PREFIX_LENGTH (sizeof
> (PLD_EXTRA_SEC_NAME_PREFIX) - 1)
> 
> +
> 
> +#pragma pack(1)
> 
> +
> 
> +typedef struct {
> 
> +  UINT32                          Identifier;
> 
> +  UINT32                          HeaderLength;
> 
> +  UINT16                          SpecRevision;
> 
> +  UINT8                           Reserved[2];
> 
> +  UINT32                          Revision;
> 
> +  UINT32                          Attribute;
> 
> +  UINT32                          Capability;
> 
> +  CHAR8                           ProducerId[16];
> 
> +  CHAR8                           ImageId[16];
> 
> +} PLD_INFO_HEADER;
> 
> +
> 
> +typedef struct {
> 
> +  UINT8 Revision;
> 
> +  UINT8 Reserved[3];
> 
> +} PLD_GENERIC_HEADER;
> 
> +
> 
> +#pragma pack()
> 
> +
> 
> +#endif
> 
> diff --git a/MdeModulePkg/MdeModulePkg.dec
> b/MdeModulePkg/MdeModulePkg.dec
> index 8d38383915..d823ad0ba7 100644
> --- a/MdeModulePkg/MdeModulePkg.dec
> +++ b/MdeModulePkg/MdeModulePkg.dec
> @@ -404,6 +404,9 @@ [Guids]
>    ## Include/Guid/MigratedFvInfo.h
> 
>    gEdkiiMigratedFvInfoGuid = { 0xc1ab12f7, 0x74aa, 0x408d, { 0xa2, 0xf4, 0xc6,
> 0xce, 0xfd, 0x17, 0x98, 0x71 } }
> 
> 
> 
> +  ## Include/UniversalPayload/ExtraData.h
> 
> +  gPldExtraDataGuid = {0x15a5baf6, 0x1c91, 0x467d, {0x9d, 0xfb, 0x31, 0x9d,
> 0x17, 0x8d, 0x4b, 0xb4}}
> 
> +
> 
>  [Ppis]
> 
>    ## Include/Ppi/AtaController.h
> 
>    gPeiAtaControllerPpiGuid       = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0, 0x7a,
> 0xaa, 0x77, 0x7f, 0x85, 0x90, 0x6d }}
> 
> --
> 2.31.1.windows.1
> 
> 
> 
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#76009): https://edk2.groups.io/g/devel/message/76009
> Mute This Topic: https://groups.io/mt/83277975/1768737
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub [hao.a.wu@intel.com]
> -=-=-=-=-=-=
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76164): https://edk2.groups.io/g/devel/message/76164
Mute This Topic: https://groups.io/mt/83277975/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-