[edk2] [PATCH v2 1/3] MdePkg: Support EFI_PEI_CORE_FV_LOCATION_PPI
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1524 Add EFI_PEI_CORE_FV_LOCATION_PPI definition basing on PI spec 1.7, Section 6.3.9. This PPI can support the secnario that PEI Foundation not in BFV. Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chasel Chiu --- MdePkg/Include/Ppi/PeiCoreFvLocation.h | 53 + MdePkg/MdePkg.dec | 11 +-- 2 files changed, 62 insertions(+), 2 deletions(-) diff --git a/MdePkg/Include/Ppi/PeiCoreFvLocation.h b/MdePkg/Include/Ppi/PeiCoreFvLocation.h new file mode 100644 index 00..c7bbbfb265 --- /dev/null +++ b/MdePkg/Include/Ppi/PeiCoreFvLocation.h @@ -0,0 +1,53 @@ +/** @file + Header file for Pei Core FV Location PPI. + + This PPI contains a pointer to the firmware volume which contains the PEI Foundation. + If the PEI Foundation does not reside in the BFV, then SEC must pass this PPI as a part + of the PPI list provided to the PEI Foundation Entry Point, otherwise the PEI Foundation + shall assume that it resides within the BFV. + + Copyright (c) 2019, Intel Corporation. All rights reserved. + This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + + @par Revision Reference: + This PPI is defined in UEFI Platform Initialization Specification 1.7 Volume 1: + Standards + +**/ + + +#ifndef _EFI_PEI_CORE_FV_LOCATION_H_ +#define _EFI_PEI_CORE_FV_LOCATION_H_ + +/// +/// Global ID for EFI_PEI_CORE_FV_LOCATION_PPI +/// +#define EFI_PEI_CORE_FV_LOCATION_GUID \ + { \ +0x52888eae, 0x5b10, 0x47d0, {0xa8, 0x7f, 0xb8, 0x22, 0xab, 0xa0, 0xca, 0xf4 } \ + } + +/// +/// Forward declaration for EFI_PEI_CORE_FV_LOCATION_PPI +/// +typedef struct _EFI_PEI_CORE_FV_LOCATION_PPI EFI_PEI_CORE_FV_LOCATION_PPI; + +/// +/// This PPI provides location of EFI PeiCoreFv. +/// +struct _EFI_PEI_CORE_FV_LOCATION_PPI { + /// + /// Pointer to the first byte of the firmware volume which contains the PEI Foundation. + /// + VOID*PeiCoreFvLocation; +}; + +extern EFI_GUID gEfiPeiCoreFvLocationPpiGuid; + +#endif // _EFI_PEI_CORE_FV_LOCATION_H_ diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec index a485408310..c859b4a511 100644 --- a/MdePkg/MdePkg.dec +++ b/MdePkg/MdePkg.dec @@ -2,9 +2,9 @@ # This Package provides all definitions, library classes and libraries instances. # # It also provides the definitions(including PPIs/PROTOCOLs/GUIDs) of -# EFI1.10/UEFI2.7/PI1.6 and some Industry Standards. +# EFI1.10/UEFI2.7/PI1.7 and some Industry Standards. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved. # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved. # (C) Copyright 2016 Hewlett Packard Enterprise Development LP # @@ -929,6 +929,13 @@ ## Include/Ppi/SecHobData.h gEfiSecHobDataPpiGuid = { 0x3ebdaf20, 0x6667, 0x40d8, {0xb4, 0xee, 0xf5, 0x99, 0x9a, 0xc1, 0xb7, 0x1f } } + # + # PPIs defined in PI 1.7. + # + + ## Include/Ppi/PeiCoreFvLocation.h + gEfiPeiCoreFvLocationPpiGuid = { 0x52888eae, 0x5b10, 0x47d0, { 0xa8, 0x7f, 0xb8, 0x22, 0xab, 0xa0, 0xca, 0xf4 }} + [Protocols] ## Include/Protocol/Pcd.h gPcdProtocolGuid = { 0x11B34006, 0xD85B, 0x4D0A, { 0xA2, 0x90, 0xD5, 0xA5, 0x71, 0x31, 0x0E, 0xF7 }} -- 2.13.3.windows.1 ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v2 1/3] MdePkg: Support EFI_PEI_CORE_FV_LOCATION_PPI
Reviewed-by: Star Zeng -Original Message- From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Chasel, Chiu Sent: Wednesday, February 13, 2019 5:47 PM To: edk2-devel@lists.01.org Cc: Kinney, Michael D ; Gao, Liming Subject: [edk2] [PATCH v2 1/3] MdePkg: Support EFI_PEI_CORE_FV_LOCATION_PPI REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1524 Add EFI_PEI_CORE_FV_LOCATION_PPI definition basing on PI spec 1.7, Section 6.3.9. This PPI can support the secnario that PEI Foundation not in BFV. Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Chasel Chiu --- MdePkg/Include/Ppi/PeiCoreFvLocation.h | 53 + MdePkg/MdePkg.dec | 11 +-- 2 files changed, 62 insertions(+), 2 deletions(-) diff --git a/MdePkg/Include/Ppi/PeiCoreFvLocation.h b/MdePkg/Include/Ppi/PeiCoreFvLocation.h new file mode 100644 index 00..c7bbbfb265 --- /dev/null +++ b/MdePkg/Include/Ppi/PeiCoreFvLocation.h @@ -0,0 +1,53 @@ +/** @file + Header file for Pei Core FV Location PPI. + + This PPI contains a pointer to the firmware volume which contains the PEI Foundation. + If the PEI Foundation does not reside in the BFV, then SEC must pass + this PPI as a part of the PPI list provided to the PEI Foundation + Entry Point, otherwise the PEI Foundation shall assume that it resides within the BFV. + + Copyright (c) 2019, Intel Corporation. All rights reserved. This + program and the accompanying materials are licensed and made + available under the terms and conditions of the BSD License which + accompanies this distribution. The full text of the license may be + found at http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + + @par Revision Reference: + This PPI is defined in UEFI Platform Initialization Specification 1.7 Volume 1: + Standards + +**/ + + +#ifndef _EFI_PEI_CORE_FV_LOCATION_H_ +#define _EFI_PEI_CORE_FV_LOCATION_H_ + +/// +/// Global ID for EFI_PEI_CORE_FV_LOCATION_PPI /// #define +EFI_PEI_CORE_FV_LOCATION_GUID \ + { \ +0x52888eae, 0x5b10, 0x47d0, {0xa8, 0x7f, 0xb8, 0x22, 0xab, 0xa0, +0xca, 0xf4 } \ + } + +/// +/// Forward declaration for EFI_PEI_CORE_FV_LOCATION_PPI /// typedef +struct _EFI_PEI_CORE_FV_LOCATION_PPI EFI_PEI_CORE_FV_LOCATION_PPI; + +/// +/// This PPI provides location of EFI PeiCoreFv. +/// +struct _EFI_PEI_CORE_FV_LOCATION_PPI { + /// + /// Pointer to the first byte of the firmware volume which contains the PEI Foundation. + /// + VOID*PeiCoreFvLocation; +}; + +extern EFI_GUID gEfiPeiCoreFvLocationPpiGuid; + +#endif // _EFI_PEI_CORE_FV_LOCATION_H_ diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec index a485408310..c859b4a511 100644 --- a/MdePkg/MdePkg.dec +++ b/MdePkg/MdePkg.dec @@ -2,9 +2,9 @@ # This Package provides all definitions, library classes and libraries instances. # # It also provides the definitions(including PPIs/PROTOCOLs/GUIDs) of -# EFI1.10/UEFI2.7/PI1.6 and some Industry Standards. +# EFI1.10/UEFI2.7/PI1.7 and some Industry Standards. # -# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. +# Copyright (c) 2007 - 2019, Intel Corporation. All rights +reserved. # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved. # (C) Copyright 2016 Hewlett Packard Enterprise Development LP # @@ -929,6 +929,13 @@ ## Include/Ppi/SecHobData.h gEfiSecHobDataPpiGuid = { 0x3ebdaf20, 0x6667, 0x40d8, {0xb4, 0xee, 0xf5, 0x99, 0x9a, 0xc1, 0xb7, 0x1f } } + # + # PPIs defined in PI 1.7. + # + + ## Include/Ppi/PeiCoreFvLocation.h + gEfiPeiCoreFvLocationPpiGuid = { 0x52888eae, 0x5b10, 0x47d0, { 0xa8, 0x7f, 0xb8, 0x22, 0xab, 0xa0, 0xca, 0xf4 }} + [Protocols] ## Include/Protocol/Pcd.h gPcdProtocolGuid = { 0x11B34006, 0xD85B, 0x4D0A, { 0xA2, 0x90, 0xD5, 0xA5, 0x71, 0x31, 0x0E, 0xF7 }} -- 2.13.3.windows.1 ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v2 1/3] MdePkg: Support EFI_PEI_CORE_FV_LOCATION_PPI
Reviewed-by: Liming Gao >-Original Message- >From: Zeng, Star >Sent: Wednesday, February 13, 2019 5:50 PM >To: Chiu, Chasel ; edk2-devel@lists.01.org >Cc: Kinney, Michael D ; Gao, Liming >; Zeng, Star >Subject: RE: [edk2] [PATCH v2 1/3] MdePkg: Support >EFI_PEI_CORE_FV_LOCATION_PPI > >Reviewed-by: Star Zeng > >-Original Message- >From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of >Chasel, Chiu >Sent: Wednesday, February 13, 2019 5:47 PM >To: edk2-devel@lists.01.org >Cc: Kinney, Michael D ; Gao, Liming > >Subject: [edk2] [PATCH v2 1/3] MdePkg: Support >EFI_PEI_CORE_FV_LOCATION_PPI > >REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1524 > >Add EFI_PEI_CORE_FV_LOCATION_PPI definition basing on PI spec 1.7, >Section 6.3.9. >This PPI can support the secnario that PEI Foundation not in BFV. > >Cc: Michael D Kinney >Cc: Liming Gao >Contributed-under: TianoCore Contribution Agreement 1.1 >Signed-off-by: Chasel Chiu >--- > MdePkg/Include/Ppi/PeiCoreFvLocation.h | 53 >+ > MdePkg/MdePkg.dec | 11 +-- > 2 files changed, 62 insertions(+), 2 deletions(-) > >diff --git a/MdePkg/Include/Ppi/PeiCoreFvLocation.h >b/MdePkg/Include/Ppi/PeiCoreFvLocation.h >new file mode 100644 >index 00..c7bbbfb265 >--- /dev/null >+++ b/MdePkg/Include/Ppi/PeiCoreFvLocation.h >@@ -0,0 +1,53 @@ >+/** @file >+ Header file for Pei Core FV Location PPI. >+ >+ This PPI contains a pointer to the firmware volume which contains the PEI >Foundation. >+ If the PEI Foundation does not reside in the BFV, then SEC must pass >+ this PPI as a part of the PPI list provided to the PEI Foundation >+ Entry Point, otherwise the PEI Foundation shall assume that it resides >within >the BFV. >+ >+ Copyright (c) 2019, Intel Corporation. All rights reserved. This >+ program and the accompanying materials are licensed and made >+ available under the terms and conditions of the BSD License which >+ accompanies this distribution. The full text of the license may be >+ found at http://opensource.org/licenses/bsd-license.php >+ >+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" >BASIS, >+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER >EXPRESS OR IMPLIED. >+ >+ @par Revision Reference: >+ This PPI is defined in UEFI Platform Initialization Specification 1.7 >Volume 1: >+ Standards >+ >+**/ >+ >+ >+#ifndef _EFI_PEI_CORE_FV_LOCATION_H_ >+#define _EFI_PEI_CORE_FV_LOCATION_H_ >+ >+/// >+/// Global ID for EFI_PEI_CORE_FV_LOCATION_PPI /// #define >+EFI_PEI_CORE_FV_LOCATION_GUID \ >+ { \ >+0x52888eae, 0x5b10, 0x47d0, {0xa8, 0x7f, 0xb8, 0x22, 0xab, 0xa0, >+0xca, 0xf4 } \ >+ } >+ >+/// >+/// Forward declaration for EFI_PEI_CORE_FV_LOCATION_PPI /// typedef >+struct _EFI_PEI_CORE_FV_LOCATION_PPI >EFI_PEI_CORE_FV_LOCATION_PPI; >+ >+/// >+/// This PPI provides location of EFI PeiCoreFv. >+/// >+struct _EFI_PEI_CORE_FV_LOCATION_PPI { >+ /// >+ /// Pointer to the first byte of the firmware volume which contains the PEI >Foundation. >+ /// >+ VOID*PeiCoreFvLocation; >+}; >+ >+extern EFI_GUID gEfiPeiCoreFvLocationPpiGuid; >+ >+#endif // _EFI_PEI_CORE_FV_LOCATION_H_ >diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec index >a485408310..c859b4a511 100644 >--- a/MdePkg/MdePkg.dec >+++ b/MdePkg/MdePkg.dec >@@ -2,9 +2,9 @@ > # This Package provides all definitions, library classes and libraries > instances. > # > # It also provides the definitions(including PPIs/PROTOCOLs/GUIDs) of -# >EFI1.10/UEFI2.7/PI1.6 and some Industry Standards. >+# EFI1.10/UEFI2.7/PI1.7 and some Industry Standards. > # >-# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved. >+# Copyright (c) 2007 - 2019, Intel Corporation. All rights >+reserved. > # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved. # > (C) >Copyright 2016 Hewlett Packard Enterprise Development LP # @@ - >929,6 +929,13 @@ > ## Include/Ppi/SecHobData.h > gEfiSecHobDataPpiGuid = { 0x3ebdaf20, 0x6667, 0x40d8, {0xb4, 0xee, 0xf5, >0x99, 0x9a, 0xc1, 0xb7, 0x1f } } > >+ # >+ # PPIs defined in PI 1.7. >+ # >+ >+ ## Include/Ppi/PeiCoreFvLocation.h >+ gEfiPeiCoreFvLocationPpiGuid = { 0x52888eae, 0x5b10, 0x47d0, { 0xa8, 0x7f, >0xb8, 0x22, 0xab, 0xa0, 0xca, 0xf4 }} >+ > [Protocols] > ## Include/Protocol/Pcd.h > gPcdProtocolGuid = { 0x11B34006, 0xD85B, 0x4D0A, { 0xA2, > 0x90, 0xD5, >0xA5, 0x71, 0x31, 0x0E, 0xF7 }} >-- >2.13.3.windows.1 > >___ >edk2-devel mailing list >edk2-devel@lists.01.org >https://lists.01.org/mailman/listinfo/edk2-devel ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel