From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id BFE9C81D31 for ; Tue, 1 Nov 2016 17:14:19 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga104.jf.intel.com with ESMTP; 01 Nov 2016 17:14:20 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,582,1473145200"; d="scan'208";a="1062594389" Received: from orsmsx101.amr.corp.intel.com ([10.22.225.128]) by fmsmga001.fm.intel.com with ESMTP; 01 Nov 2016 17:14:20 -0700 Received: from orsmsx153.amr.corp.intel.com (10.22.226.247) by ORSMSX101.amr.corp.intel.com (10.22.225.128) with Microsoft SMTP Server (TLS) id 14.3.248.2; Tue, 1 Nov 2016 17:14:20 -0700 Received: from orsmsx113.amr.corp.intel.com ([169.254.9.50]) by ORSMSX153.amr.corp.intel.com ([10.22.226.247]) with mapi id 14.03.0248.002; Tue, 1 Nov 2016 17:14:19 -0700 From: "Kinney, Michael D" To: "Yao, Jiewen" , "edk2-devel@lists.01.org" , "Kinney, Michael D" CC: "Tian, Feng" , "Zeng, Star" , "Gao, Liming" , "Zhang, Chao B" Thread-Topic: [PATCH V7 03/15] MdeModulePkg/MdeModulePkg.dec: Add capsule related definition. Thread-Index: AQHSNDg8sOu0N9g5R0ar5B/FhxYd96DEuQiA Date: Wed, 2 Nov 2016 00:14:19 +0000 Message-ID: References: <1478001910-8040-1-git-send-email-jiewen.yao@intel.com> <1478001910-8040-4-git-send-email-jiewen.yao@intel.com> In-Reply-To: <1478001910-8040-4-git-send-email-jiewen.yao@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_IC x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZDNkYjI5YjEtMmQ0NS00NmIwLTk5MjYtZmM3M2ZkYjQ3NzAwIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IklMMnpQR1JmbEVxWFNmeFBHQW54czFzbjE1aG9JTkRLTmhhOU5sVTNCaHc9In0= x-originating-ip: [10.22.254.139] MIME-Version: 1.0 Subject: Re: [PATCH V7 03/15] MdeModulePkg/MdeModulePkg.dec: Add capsule related definition. X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Nov 2016 00:14:19 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Jiewen, Why does the following PCD have a default value that is a full GUID? I think it should have a default value of {0x0} because every platform must create one of more new GUIDs for the set of Capsule Image Type ID GUIDs the platform supports. =20 =20 ## This PCD hold a list GUIDs for the ImageTypeId to indicate the # FMP capsule is a system FMP. # @Prompt A list of system FMP ImageTypeId GUIDs gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xd3, = 0xee, 0x7e, 0x3f, 0x91, 0xf4, 0x1e, 0x40, 0x9e, 0xce, 0x74, 0x31, 0x32, 0x2= e, 0xad, 0xf6}|VOID*|0x30001046 Thanks, Mike > -----Original Message----- > From: Yao, Jiewen > Sent: Tuesday, November 1, 2016 5:05 AM > To: edk2-devel@lists.01.org > Cc: Tian, Feng ; Zeng, Star ; K= inney, Michael > D ; Gao, Liming ; Zhang= , Chao B > > Subject: [PATCH V7 03/15] MdeModulePkg/MdeModulePkg.dec: Add capsule rela= ted > definition. >=20 > 1) Add capsule related library. > FmpAuthenticationLib > 2) Add capsule related status code PCD. > PcdStatusCodeSubClassCapsule > PcdCapsuleStatusCodeProcessCapsulesBegin > PcdCapsuleStatusCodeProcessCapsulesEnd > PcdCapsuleStatusCodeUpdatingFirmware > PcdCapsuleStatusCodeUpdateFirmwareSuccess > PcdCapsuleStatusCodeUpdateFirmwareFailed > PcdCapsuleStatusCodeResettingSystem > 3) Add capsule status variable PCD - CapsuleMax value. > PcdCapsuleMax > 4) Add system FMP indicator PCD - used by ESRT. > PcdSystemFmpCapsuleImageTypeIdGuid > 5) Add PcdTestKeyUsed PCD. > This PCD can be set by platform to indicate if there is any > test key used in current BIOS, such as recovery key, > or capsule update key. > Then the generic UI may consume this PCD to show warning information. > Other platform driver may also consume this PCD to know such info, > and report it via platform specific way. >=20 > Cc: Feng Tian > Cc: Star Zeng > Cc: Michael D Kinney > Cc: Liming Gao > Cc: Chao Zhang > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Jiewen Yao > Reviewed-by: Liming Gao > --- > MdeModulePkg/MdeModulePkg.dec | 73 ++++++++++++++++++++ > 1 file changed, 73 insertions(+) >=20 > diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.de= c > index 74b8700..4ae459f 100644 > --- a/MdeModulePkg/MdeModulePkg.dec > +++ b/MdeModulePkg/MdeModulePkg.dec > @@ -157,6 +157,10 @@ > ## > FrameBufferBltLib|Include/Library/FrameBufferBltLib.h >=20 > + ## @libraryclass Provides services to authenticate a UEFI defined FMP= Capsule. > + # > + FmpAuthenticationLib|Include/Library/FmpAuthenticationLib.h > + > [Guids] > ## MdeModule package token space guid > # Include/Guid/MdeModulePkgTokenSpace.h > @@ -1141,6 +1145,66 @@ > # The default value is 0 that means infinite. > # @Prompt MAX repair count > gEfiMdeModulePkgTokenSpaceGuid.PcdMaxRepairCount|0x00|UINT32|0x0001007= 6 > + > + ## Status Code for Capsule subclass definitions.

> + # EFI_OEM_SPECIFIC_SUBCLASS_CAPSULE =3D 0x00810000
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule subclass definitions > + # @ValidList 0x80000003 | 0x00810000 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeSubClassCapsule|0x00810000|UI= NT32|0x0000010 > 0 > + > + ## Status Code for Capsule Process Begin.

> + # EFI_CAPSULE_PROCESS_CAPSULES_BEGIN =3D (EFI_OEM_SPECIFIC | 0x00000= 001) =3D > 0x00008001
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule Process Begin > + # @ValidList 0x80000003 | 0x00008001 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleStatusCodeProcessCapsulesBegin|0= x00008001|UINT > 32|0x00000101 > + > + ## Status Code for Capsule Process End.

> + # EFI_CAPSULE_PROCESS_CAPSULES_END =3D (EFI_OEM_SPECIFIC | 0x00000= 002) =3D > 0x00008002
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule Process End > + # @ValidList 0x80000003 | 0x00008002 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleStatusCodeProcessCapsulesEnd|0x0= 0008002|UINT32 > |0x00000102 > + > + ## Status Code for Capsule Process Updating Firmware.

> + # EFI_CAPSULE_UPDATING_FIRMWARE =3D (EFI_OEM_SPECIFIC | 0x00000= 003) =3D > 0x00008003
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule Process Updating Firmware > + # @ValidList 0x80000003 | 0x00008003 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleStatusCodeUpdatingFirmware|0x000= 08003|UINT32|0 > x00000103 > + > + ## Status Code for Capsule Process Update Firmware Success.

> + # EFI_CAPSULE_UPDATE_FIRMWARE_SUCCESS =3D (EFI_OEM_SPECIFIC | 0x00000= 004) =3D > 0x00008004
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule Process Update Firmware Success > + # @ValidList 0x80000003 | 0x00008004 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleStatusCodeUpdateFirmwareSuccess|= 0x00008004|UIN > T32|0x00000104 > + > + ## Status Code for Capsule Process Update Firmware Failed.

> + # EFI_CAPSULE_UPDATE_FIRMWARE_FAILED =3D (EFI_OEM_SPECIFIC | 0x00000= 005) =3D > 0x00008005
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule Process Update Firmware Failed > + # @ValidList 0x80000003 | 0x00008005 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleStatusCodeUpdateFirmwareFailed|0= x00008005|UINT > 32|0x00000105 > + > + ## Status Code for Capsule Resetting System.

> + # EFI_CAPSULE_RESETTING_SYSTEM =3D (EFI_OEM_SPECIFIC | 0x00000= 006) =3D > 0x00008006
> + # NOTE: The default value of this PCD may collide with other OEM spec= ific status > codes. > + # Override the value of this PCD in the platform DSC file as ne= eded. > + # @Prompt Status Code for Capsule Resetting System > + # @ValidList 0x80000003 | 0x00008006 > + > gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleStatusCodeResettingSystem|0x0000= 8006|UINT32|0x > 00000106 > + > + ## CapsuleMax value in capsule report variable. > + # @Prompt CapsuleMax value in capsule report variable. > + gEfiMdeModulePkgTokenSpaceGuid.PcdCapsuleMax|0xFFFF|UINT16|0x00000107 >=20 > [PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx] > ## This PCD defines the Console output row. The default value is 25 ac= cording to > UEFI spec. > @@ -1587,6 +1651,11 @@ > # The PCD data must be in UNICODE format. > gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryFileName|L"FVMAIN.FV"|VOID*|= 0x30001045 >=20 > + ## This PCD hold a list GUIDs for the ImageTypeId to indicate the > + # FMP capsule is a system FMP. > + # @Prompt A list of system FMP ImageTypeId GUIDs > + gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xd= 3, 0xee, 0x7e, > 0x3f, 0x91, 0xf4, 0x1e, 0x40, 0x9e, 0xce, 0x74, 0x31, 0x32, 0x2e, 0xad, > 0xf6}|VOID*|0x30001046 > + > [PcdsPatchableInModule] > ## Specify memory size with page number for PEI code when > # Loading Module at Fixed Address feature is enabled. > @@ -1639,5 +1708,9 @@ > # @ValidList 0x80000001 | 0x0 > gEfiMdeModulePkgTokenSpaceGuid.PcdIdentifyMappingPageTablePtr|0x0|UINT= 64|0x00030002 >=20 > + ## This dynamic PCD holds the information if there is any test key use= d by the > platform. > + # @Prompt If there is any test key used by the platform. > + gEfiMdeModulePkgTokenSpaceGuid.PcdTestKeyUsed|FALSE|BOOLEAN|0x00030003 > + > [UserExtensions.TianoCore."ExtraFiles"] > MdeModulePkgExtra.uni > -- > 2.7.4.windows.1