From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.24; helo=mga09.intel.com; envelope-from=liming.gao@intel.com; receiver=edk2-devel@lists.01.org Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) (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 2EA632118A593 for ; Thu, 7 Jun 2018 01:12:27 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Jun 2018 01:12:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,486,1520924400"; d="scan'208";a="55436840" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by FMSMGA003.fm.intel.com with ESMTP; 07 Jun 2018 01:12:26 -0700 Received: from fmsmsx121.amr.corp.intel.com (10.18.125.36) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 7 Jun 2018 01:12:26 -0700 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by fmsmsx121.amr.corp.intel.com (10.18.125.36) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 7 Jun 2018 01:12:25 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.87]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.82]) with mapi id 14.03.0319.002; Thu, 7 Jun 2018 16:12:22 +0800 From: "Gao, Liming" To: "Zhu, Yonghong" , "edk2-devel@lists.01.org" CC: "Kinney, Michael D" , "Shaw, Kevin W" Thread-Topic: [Patch] Build spec: Add a Common PCD rules section for build report Thread-Index: AQHT/MdW7rVTHrMOnEmxLPK9+FDCBqRUdO0g Date: Thu, 7 Jun 2018 08:12:22 +0000 Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14E294156@SHSMSX104.ccr.corp.intel.com> References: <1528201079-9740-1-git-send-email-yonghong.zhu@intel.com> In-Reply-To: <1528201079-9740-1-git-send-email-yonghong.zhu@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [Patch] Build spec: Add a Common PCD rules section for build report X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jun 2018 08:12:28 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Liming Gao >-----Original Message----- >From: Zhu, Yonghong >Sent: Tuesday, June 05, 2018 8:18 PM >To: edk2-devel@lists.01.org >Cc: Gao, Liming ; Kinney, Michael D >; Shaw, Kevin W >Subject: [Patch] Build spec: Add a Common PCD rules section for build repo= rt > >1. Add a Common PCD rules section to introduce 1)the *B, *F, *P, *M's >meaning, 2) the PCD display order, 3) both display hex value and >integer for UINT* type PCD. >2. Update some items to match with code, eg: UEFI Spec Version >3. Update some typo, eg: Fv Name. > >Cc: Liming Gao >Cc: Michael Kinney >Cc: Kevin W Shaw >Contributed-under: TianoCore Contribution Agreement 1.1 >Signed-off-by: Yonghong Zhu >--- > .../132_sample_launch_steps_nt32_platform.md | 4 +- > 13_build_reports/133_output.md | 9 +- > 13_build_reports/134_platform_summary.md | 58 ++++++----- > 13_build_reports/135_mixed_pcd_section.md | 8 +- > 13_build_reports/136_global_pcd_section.md | 67 ++++++------- > 13_build_reports/137_fd_section.md | 18 ++-- > 13_build_reports/138_module_section.md | 107 +++++++---------= ----- > 13_build_reports/README.md | 4 +- > 8 files changed, 122 insertions(+), 153 deletions(-) > >diff --git a/13_build_reports/132_sample_launch_steps_nt32_platform.md >b/13_build_reports/132_sample_launch_steps_nt32_platform.md >index 099dc07..7c73a5d 100644 >--- a/13_build_reports/132_sample_launch_steps_nt32_platform.md >+++ b/13_build_reports/132_sample_launch_steps_nt32_platform.md >@@ -1,9 +1,9 @@ > > >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D< > ``` > >-### 13.4.2 PCDs not used >+### 13.4.3 PCDs not used > > If a PCD defined in DSC or FDF file, but the PCD is not used in a conditi= onal > directive statement and not used by any module, the not used PCD section = is > generated. This is optional section. > >@@ -126,17 +139,10 @@ report. Only the final value is displayed. > > The first line is required: > > `[*P|*F|*B] : () >[()][()] =3D ` > >-* `*P` means the Pcd's value was obtained from the DSC file >-* `*F` means the PCD's value was obtained from the FDF file. >-* `*B` means the PCD's value set by a build option. >-* If no `*P`, `*F` or `*B` is shown, the PCD's value comes from DEC file.= If the >- value obtained from either a build option, the DSC or FDF is the same a= s the >- value in the DEC, then `*B`, `*P` or `*F` will not be shown in the repo= rt. >- > **Note: ** If the Pcd is a Structure PCD, `` is the Struct Nam= e. > > Additional lines may be displayed showing default values when the value i= s >not a > default value. > >@@ -154,10 +160,10 @@ PCDs not used by modules or in conditional >directives > PCD statements > >------------------------------------------------------------------------= --< > gMyTokenSpaceGuid > *P SmmEnable : FEATURE (BOOLEAN) =3D 0x0 > DEC DEFAULT =3D 0x1 >-*B UsbEnable : FIXED (UNIT32) =3D 0x1 >- DEC DEFAULT =3D 0x0 >+*B UsbEnable : FIXED (UNIT32) =3D 0x1 (1) >+ DEC DEFAULT =3D 0x0 (0) > <------------------------------------------------------------------------= --> > >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D< > ``` >diff --git a/13_build_reports/135_mixed_pcd_section.md >b/13_build_reports/135_mixed_pcd_section.md >index b09f46c..654f157 100644 >--- a/13_build_reports/135_mixed_pcd_section.md >+++ b/13_build_reports/135_mixed_pcd_section.md >@@ -1,9 +1,9 @@ > > > ## 13.5 Mixed PCD Section > >-There is an optional sub-section that, when present, lists the PCDs in th= e >-platform that use multiple access methods. This sub-section is only prese= nt if >+There is an optional section that, when present, lists the PCDs in the >+platform that use multiple access methods. This section is only present i= f > there are Binary modules included in the platform build and the binary >module > uses a different PCD access method than other modules in the same platfor= m > build. > >-The sub-section header is: >+The section header is: > > ``` > >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D< > The following PCDs use different access methods: > >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >diff --git a/13_build_reports/136_global_pcd_section.md >b/13_build_reports/136_global_pcd_section.md >index 2a5b682..64f800c 100644 >--- a/13_build_reports/136_global_pcd_section.md >+++ b/13_build_reports/136_global_pcd_section.md >@@ -29,19 +29,18 @@ > > --> > > ## 13.6 Global PCD Section > >-This section contains the information for all PCDs whose values are the s= ame >-for all modules in a platform. The content of global PCD sub-section is >grouped >-by token space: >+This section contains the information for all PCDs that used for all modu= les in >+a platform. The content of global PCD section is grouped by token space: > > ``` >-gEfiNt32PkgTokenSpaceGuid >+gEfiMdeModulePkgTokenSpaceGuid > ... > ... >-gEfiMdeModulePkgTokenSpaceGuid >+gEfiNt32PkgTokenSpaceGuid > ... > ... > ... > ``` > >@@ -54,29 +53,22 @@ Each global PCD item contains one or more lines: > > The first line is required: > > `[*P|*F|*B] : () >[()][()] =3D ` > >-* `*P` means the PCD's value was obtained from the DSC file >-* `*F` means the PCD's value was obtained from the FDF file. >-* `*B` means the PCD's value was obtained from a build option. >-* If no `*P`, `*F` or `*B` is shown, the PCD's value comes from DEC file.= If the >- value obtained from either a build option, the DSC or FDF is the same a= s the >- value in the DEC, then `*B`, `*P` or `*F` will not be shown in the repo= rt. >- > **Note: ** If the Pcd is a Structure PCD, `` is the Struct Nam= e. > > #### Examples > > ``` > *P PcdWinNtFirmwareVolume : FIXED (VOID*) =3D L"..\\Fv\\N= t32.fd" >-*F PcdWinNtFlashNvStorageFtwWorkingBase : FIXED (UINT32) =3D 0x0028E000 >- DEC DEFAULT =3D 0x0 >+*F PcdWinNtFlashNvStorageFtwWorkingBase : FIXED (UINT32) =3D >0x0028E000 (2678784) >+ DEC DEFAULT =3D 0x0 (0) > > gTokenSpaceGuid >-*B LogEnable : FIXED (UNIT32) =3D 0x1 >- DEC DEFAULT =3D 0x0 >+*B LogEnable : FIXED (UNIT32) =3D 0x1 (1) >+ DEC DEFAULT =3D 0x0 (0) > *P TestDynamic : DYN (VOID*) (DEFAULT) =3D L= "COM1!COM2" > : DYN (VOID*) (SKU1) =3D L= "COM3!COM4" > : DYN (VOID*) (SKU2) =3D L= "COM5!COM6" > DEC DEFAULT =3D L"COM1!= COM0" > ``` >@@ -90,22 +82,22 @@ gTokenSpaceGuid > `::` > > #### Example > > ``` >-*P PcdGMchDvmtTotalSize : DYN-HII (UINT8) =3D 0 >+*P PcdGMchDvmtTotalSize : DYN-HII (UINT8) =3D 0x0 (0) > gSysConfigGuid: L"Setup": 0xAA > ``` > > * if `` is DYN-VPD > > `` > > #### Example > > ``` >-*F PcdVpdSample : DYN-VPD (UINT32) =3D 1 >+*F PcdVpdSample : DYN-VPD (UINT32) =3D 0x1 (1) > 0x0001FFF > ``` > > #### 13.6.2.2 Default (optional) line > >@@ -120,34 +112,33 @@ It is formatted as follows: > `DEC DEFAULT =3D ` > > #### Example > > ``` >-*P PcdWinNtFirmwareFdSize : FIXED (UINT32) =3D 0x2a0000 >- DEC DEFAULT =3D 0x0 >+*P PcdWinNtFirmwareFdSize : FIXED (UINT32) =3D 0x2a0000 (2752512) >+ DEC DEFAULT =3D 0x0 (0) > ``` > > #### 13.6.2.3 Additional optional lines > > Additional lines are optional and show if the PCD's value was obtained fr= om >the >-INF file. This will be listed if the module's final PCD value is not the = same >-as the first line. The value can be obtained from the INF file only if a = single >-module uses the PCD. >+INF file or DSC file components module scoped PCD section. This will be >listed >+if the module's final PCD value is not the same as the first line. > >-*M means the PCD's value was obtained from the INF file. >+*M means the PCD's value was obtained from the INF file or DSC file >components >+module scoped PCD section. > > These lines are formatted as: > > `*M Inf Filename =3D ` > > #### Example > > ``` >-*P PcdDebugPrintErrorLevel : PATCH (UINT32) =3D 0x80000042 >- DEC DEFAULT =3D 0x80000000 >- =3D 0x80000000 >-*M Tcp4Dxe.inf =3D 0x0 >+*P PcdDebugPrintErrorLevel : PATCH (UINT32) =3D 0x80000042 (2147483714) >+ DEC DEFAULT =3D 0x80000000 (2147483648) >+*M Tcp4Dxe.inf =3D 0x0 (0) > ``` > > ********** > **Note:** Global PCD section is present when **PCD** is specified in **- >Y** > option. >@@ -162,20 +153,10 @@ additional print a *B Flag. > > #### Example > > ``` > gEfiMdePkgTokenSpaceGuid >-*P TestFix : FIXED (TEST) =3D { >- >0xff,0x02,0x00,0x2e,0xf6,0x08,0x6f,0x19,0x5c,0x8e,0x49,0x91,0x57,0x00,0x00= , >0x00, >- 0x00,0x64,0x00,0x00,0x00} >- .A =3D 0x2 >- .C =3D 0x0 >- .Array =3D {0x2e,0xf6,0x08,0x6f,0x19,0x5c,0x8e,0x49,0x= 91,0x57} >- .D =3D 0x64 >- DEC DEFAULT =3D {0xFF,0xFF} >- .A =3D 0xF >- .C =3D 0xF > *B TestDynamicExHii : DEXHII (TEST) (SKU1) (STANDARD) = =3D { > >0xff,0x01,0x00,0x2e,0xf6,0x08,0x6f,0x19,0x5c,0x8e,0x49,0x91,0x57,0x00,0x00= , >0x00, > 0x00,0x64,0x00,0x00,0x00} > .A =3D 0x1 > *B .C =3D 0x0 >@@ -189,6 +170,16 @@ gEfiMdePkgTokenSpaceGuid > .Array =3D {0x2e,0xf6,0x08,0x6f,0x20,0x5c,0x8e,0x49,0x= 91,0x57} > .D =3D 0x68 > DEC DEFAULT =3D {0xFF,0xFF} > .A =3D 0xF > .C =3D 0xF >+*P TestFix : FIXED (TEST) =3D { >+ >0xff,0x02,0x00,0x2e,0xf6,0x08,0x6f,0x19,0x5c,0x8e,0x49,0x91,0x57,0x00,0x00= , >0x00, >+ 0x00,0x64,0x00,0x00,0x00} >+ .A =3D 0x2 >+ .C =3D 0x0 >+ .Array =3D {0x2e,0xf6,0x08,0x6f,0x19,0x5c,0x8e,0x49,0x= 91,0x57} >+ .D =3D 0x64 >+ DEC DEFAULT =3D {0xFF,0xFF} >+ .A =3D 0xF >+ .C =3D 0xF > ``` >diff --git a/13_build_reports/137_fd_section.md >b/13_build_reports/137_fd_section.md >index 49c2695..43d26ec 100644 >--- a/13_build_reports/137_fd_section.md >+++ b/13_build_reports/137_fd_section.md >@@ -1,9 +1,9 @@ > > ``` > >-#### Example2: >- >-``` >->------------------------------------------------------------------------= --< >-Library >--------------------------------------------------------------------------= -- >-s:\edk2\R8MyPlatformPkg\Guid\GuidLib.inf >-s:\edk2\EdkCompatibilityPkg\Foundation\Guid\EdkGuidLib.inf >-s:\edk2\EdkCompatibilityPkg\Foundation\Protocol\EdkProtocolLib.inf >- >s:\edk2\EdkCompatibilityPkg\Foundation\Library\RuntimeDxe\EfiRuntimeLib >\EfiRuntimeLib.inf >- >s:\edk2\EdkCompatibilityPkg\Foundation\Core\Dxe\ArchProtocol\ArchProtoc >olLib.inf >- >s:\edk2\EdkCompatibilityPkg\Foundation\Library\CompilerStub\CompilerStu >bLib.inf >-s:\edk2\EdkCompatibilityPkg\Foundation\Guid\EdkGuidLib.inf >- >s:\edk2\EdkCompatibilityPkg\Foundation\Framework\Protocol\EdkFramewor >kProtocolLib.inf >-s:\edk2\EdkCompatibilityPkg\Foundation\Efi\Guid\EfiGuidLib.inf >-s:\edk2\EdkCompatibilityPkg\Foundation\Efi\Protocol\EfiProtocolLib.inf >- >s:\edk2\EdkCompatibilityPkg\Foundation\Library\EfiCommonLib\EfiCommonL >ib.inf >- >s:\edk2\EdkCompatibilityPkg\Foundation\Framework\Guid\EdkFrameworkG >uidLib.inf >-<------------------------------------------------------------------------= --> >-``` >- > ********** > **Note:** This sub-section is present when **LIBRARY** is specified in **= - >Y** > option. > ********** > >@@ -226,34 +199,28 @@ option. > This sub-section (following the Module Summary information) holds the > information for all PCDs used in this module. The content of module PCD > sub-section is divided by token space such as: > > ``` >-gEfiNt32PkgTokenSpaceGuid >+gEfiMdeModulePkgTokenSpaceGuid > ... > ... >-gEfiMdeModulePkgTokenSpaceGuid >+gEfiNt32PkgTokenSpaceGuid > ... > ... > ... > ``` > >-Each PCD may contain up to four lines: >+Each PCD may contain up to following lines: > > 1. The first line is a mandatory line with the following format: >- `[*P|*F|*B|*M] : () >[()][()] =3D ` >+ >+ `[*B|*F|*P|*M] : () >[()][()] =3D ` > > **Note: ** If the Pcd is a Structure PCD, `` is the Struct = Name. > >- - \*P means the Pcd's value is the platform default (listed in DSC PCD >common >- section or inherited from Module INF file). >- - \*M means the PCD's value in module INF was obtained from the >`[Components]` >- section of the DSC file. >- - \*F means the PCD's value is override in FDF file. >- - \*B means the PCD's value is override in build option. >- - If no \*P or \*F or \*B or \*M, mean the PCD's value comes from DEC = file. >- - For example: >+ For example: > ``` > *P PcdWinNtFirmwareVolume : FIXED (VOID*) =3D L"..\\Fv\\Nt32.fd" > ``` > > 2. The second line is the optional line >@@ -261,20 +228,20 @@ Each PCD may contain up to four lines: > ``` > :: > ``` > For example: > ``` >- *P PcdGMchDvmtTotalSize : DYN-HII (UINT8) =3D 0 >+ *P PcdGMchDvmtTotalSize : DYN-HII (UINT8) =3D 0x0 (0) > gSysConfigGuid: L"Setup": 0xAA > ``` > - if `` is DYN-VPD > ``` > > ``` > For example: > ``` >- *F PcdVpdSample : DYN-VPD (UINT32) =3D 1 >+ *F PcdVpdSample : DYN-VPD (UINT32) =3D 0x1 (1) > 0x0001FFF > ``` > > 3. The third and fourth lines are both option if the module's final > `` is not equal to the PCD value in the PCD common section i= n >the >@@ -283,16 +250,16 @@ Each PCD may contain up to four lines: > DSC DEFAULT =3D > DEC DEFAULT =3D > ``` > For example: > ``` >- *P PcdPlatformBootTimeOut : DYNHII (UINT16) =3D 10 >+ *M PcdDebugPrintErrorLevel : FIXED (UINT32) =3D 0x80000042 (21474837= 14) >+ DSC DEFAULT =3D 0x80000040 (2147483712) >+ DEC DEFAULT =3D 0x80000000 (2147483648) >+ *P PcdPlatformBootTimeOut : DYNHII (UINT16) =3D 0xA (10) > gEfiGlobalVariableGuid: L"Timeout": 0x0 >- DEC DEFAULT =3D 0xffff >- *M PcdDebugPrintErrorLevel : FIXED (UINT32) =3D 0x80000042 >- DSC DEFAULT =3D 0x80000040 >- DEC DEFAULT =3D 0x80000000 >+ DEC DEFAULT =3D 0xffff (65535) > ``` > > 4. Additional lines may exist if the PCD is Structure PCD. Every field va= lue > that user specified in DSC/DEC file and build command will print out. The= field > value is from DSC/DEC file or build command, not from the final structure >byte >diff --git a/13_build_reports/README.md b/13_build_reports/README.md >index 9050690..b774d68 100644 >--- a/13_build_reports/README.md >+++ b/13_build_reports/README.md >@@ -1,9 +1,9 @@ >