From: "Gao, Liming" <liming.gao@intel.com>
To: "Zeng, Star" <star.zeng@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Subject: Re: [Patch 00/14] Enable Structure PCD support in edk2
Date: Thu, 21 Dec 2017 08:18:46 +0000 [thread overview]
Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14E195264@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <0C09AFA07DD0434D9E2A0C6AEB0483103B9C5D75@shsmsx102.ccr.corp.intel.com>
Star:
Thanks for your comments. I will update the patches and send new version for review.
>-----Original Message-----
>From: Zeng, Star
>Sent: Thursday, December 21, 2017 3:16 PM
>To: Gao, Liming <liming.gao@intel.com>; edk2-devel@lists.01.org
>Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Zeng, Star
><star.zeng@intel.com>
>Subject: RE: [Patch 00/14] Enable Structure PCD support in edk2
>
>Another, please also more comments for the fields in
>NV_STORE_DEFAULT_BUFFER_HEADER.
>
>
>Thanks,
>Star
>-----Original Message-----
>From: Zeng, Star
>Sent: Thursday, December 21, 2017 3:11 PM
>To: Gao, Liming <liming.gao@intel.com>; edk2-devel@lists.01.org
>Cc: Zhu, Yonghong <yonghong.zhu@intel.com>; Zeng, Star
><star.zeng@intel.com>
>Subject: RE: [Patch 00/14] Enable Structure PCD support in edk2
>
>Liming,
>
>I have some comments to the patch series about MdeModulePkg changes.
>
>For MdeModulePkg: Update PCD driver to support Dynamic
>PcdVpdBaseAddress, Could the if condition adjustment be removed? And
>how about declaring "extern UINT32 mVpdBaseAddress;" in Service.h instead
>of Service.c?
>
>For MdeModulePkg: Enable Firmware to retrieve the default setting, Could
>this patch be spilt to three by driver update or more patches?
>Could the code have more specific name for DATA_DELTA, and etc?
>Please update MdeModulePkg.uni for new PCDs PcdSetNvStoreDefaultId and
>PcdNvStoreDefaultValueBuffer.
>Should more comments be added for PcdSetNvStoreDefaultId to state that
>this PCD should be set at PEI phase?
>Should PcdSetNvStoreDefaultIdCallBack use current buffer length instead of
>max buffer length for NvStoreDefaultValueBuffer?
>Please re-check the code logic in
>ConvertNormalVarStorageToAuthVarStorage() about pad between header,
>name and data.
>
>
>
>Thanks,
>Star
>-----Original Message-----
>From: Gao, Liming
>Sent: Friday, December 1, 2017 10:59 PM
>To: edk2-devel@lists.01.org
>Cc: Zeng, Star <star.zeng@intel.com>; Zhu, Yonghong
><yonghong.zhu@intel.com>
>Subject: [Patch 00/14] Enable Structure PCD support in edk2
>
>All code are in https://github.com/tianocore/edk2-
>staging/tree/StructurePcdV3.
>Patches are 544d8e..dd79a7. Unit Test cases are 89e7c7..1b2d19.
>The patches will not be sent by mail. Please review them in edk2-staging.
>
>Structure PCD is to support the same C structure/Enum/Macro definition in
>PCD, and specify the value for individual fields in a VOID* PCD in DEC/DSC. It
>includes the group of the sub features.
>[BaseTools] Structure PCD value assignment in DEC/DSC
>https://bugzilla.tianocore.org/show_bug.cgi?id=542
>[BaseTools] Extended SKU Support - Inheritance
>https://bugzilla.tianocore.org/show_bug.cgi?id=543
>[BaseTools/PCD] Pcd Database size optimization for multi-SKU
>https://bugzilla.tianocore.org/show_bug.cgi?id=546
>[BaseTools/PCD/HiiDataBase] Collect DynamicHii PCD value as the default
>setting for EFI Variable and HII VarStore.
>https://bugzilla.tianocore.org/show_bug.cgi?id=611
>[BaseTools] Build report update for Structure PCD value and SKU,
>DefaultStore
>https://bugzilla.tianocore.org/show_bug.cgi?id=706
>
>The main changes are in BaseTools to calculate structure PCD value.
>Firmware code Pcd driver, HiiDataBase and Variable driver are updated.
>And, PCD database format has been optimized. So, its version is changed from
>current 6 to 7. Besides it, others are compatible. There is no impact on current
>platform and current usage. If you find any breaking, please raise it to me.
>
>The detail changes are specified in each tracker and each RFC.
>
>Unit Test:
>1) Windows VS2015 Build TestPkg and Nt32Pkg
>2) Linux GCC5 Build OvmfPkg
>3) Verify Strucutre PCD field value collection
>4) Verify Strucutre PCD from the different SKUs
>5) Structure DynamicHii PCD is saved as the default EFI variable
>6) Structure DynamicHii PCD impacts HII IFR default setting
>7) Strucutre PCD field value is shown in build report.
>8) Multiple SKU PCD values is shown in build report.
>
>Liming Gao (14):
> BaseTools: Update Makefile to work at absolute path
> BaseTools: Add PcdValueCommon logic into C source CommonLib
> MdeModulePkg: Update PCD driver to support Dynamic PcdVpdBaseAddress
> MdeModulePkg: Enable Firmware to retrieve the default setting
> MdeModulePkg: Update PCD driver to support the optimized PcdDataBase
> MdeModulePkg: Pcd/HiiDatabase Update default setting format with max
> size
> BaseTools: Support Structure PCD value assignment in DEC/DSC
> BaseTools: Collect DynamicHii PCD values and assign it to VPD PCD
> Value
> BaseTools: Support Structure PCD value inherit between the different
> SKUs
> BaseTools: PcdDataBase Optimization for multiple SkuIds
> BaseTools: Report Structure PCD value and SKU, DefaultStore info
> BaseTools: Update NV Default Header format to include the max size
> BaseTools: Optimize VPD PCD value for the different SKUs
> BaseTools: Fixed the issue of Multiple Skus are always disables
>
> BaseTools/Source/C/Common/GNUmakefile | 3 +-
> BaseTools/Source/C/Common/Makefile | 3 +-
> BaseTools/Source/C/Common/PcdValueCommon.c | 607 +++++
> BaseTools/Source/C/Common/PcdValueCommon.h | 78 +
> BaseTools/Source/C/Makefiles/app.makefile | 2 +-
> BaseTools/Source/C/Makefiles/ms.app | 4 +-
> BaseTools/Source/Python/AutoGen/AutoGen.py | 406 ++-
> BaseTools/Source/Python/AutoGen/GenC.py | 77 +-
> BaseTools/Source/Python/AutoGen/GenMake.py | 2 +-
> BaseTools/Source/Python/AutoGen/GenPcdDb.py | 260 +-
> BaseTools/Source/Python/AutoGen/GenVar.py | 341 +++
> BaseTools/Source/Python/Common/BuildToolError.py | 3 +
> BaseTools/Source/Python/Common/DataType.py | 2 +
> BaseTools/Source/Python/Common/GlobalData.py | 6 +
> BaseTools/Source/Python/Common/Misc.py | 221 +-
> .../Source/Python/Common/ToolDefClassObject.py | 1 -
> BaseTools/Source/Python/Common/VpdInfoFile.py | 11 +-
> .../Source/Python/CommonDataClass/CommonClass.py | 5 +-
> .../Source/Python/CommonDataClass/DataClass.py | 11 +
> .../Source/Python/Workspace/BuildClassObject.py | 66 +
> BaseTools/Source/Python/Workspace/DecBuildData.py | 463 ++++
>BaseTools/Source/Python/Workspace/DscBuildData.py | 1961
>++++++++++++++ BaseTools/Source/Python/Workspace/InfBuildData.py |
>1212 +++++++++
> .../Source/Python/Workspace/MetaFileParser.py | 311 ++-
> BaseTools/Source/Python/Workspace/MetaFileTable.py | 11 +-
> .../Source/Python/Workspace/WorkspaceCommon.py | 44 +-
> .../Source/Python/Workspace/WorkspaceDatabase.py | 2834 +----------------
>---
> BaseTools/Source/Python/build/BuildReport.py | 296 +-
> BaseTools/Source/Python/build/build.py | 2 +
> .../Include/Guid/PcdDataBaseSignatureGuid.h | 82 +-
> MdeModulePkg/MdeModulePkg.dec | 20 +-
> MdeModulePkg/Universal/HiiDatabaseDxe/Database.c | 470 ++++
> .../Universal/HiiDatabaseDxe/HiiDatabase.h | 9 +-
> .../Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf | 1 +
> MdeModulePkg/Universal/PCD/Dxe/Pcd.c | 29 +-
> MdeModulePkg/Universal/PCD/Dxe/Service.c | 322 +--
> MdeModulePkg/Universal/PCD/Dxe/Service.h | 35 +-
> MdeModulePkg/Universal/PCD/Pei/Pcd.c | 343 ++-
> MdeModulePkg/Universal/PCD/Pei/Pcd.inf | 5 +
> MdeModulePkg/Universal/PCD/Pei/Service.c | 150 +-
> MdeModulePkg/Universal/PCD/Pei/Service.h | 33 +-
> .../Universal/Variable/RuntimeDxe/Variable.c | 106 +-
> 42 files changed, 7036 insertions(+), 3812 deletions(-) create mode 100644
>BaseTools/Source/C/Common/PcdValueCommon.c
> create mode 100644 BaseTools/Source/C/Common/PcdValueCommon.h
> create mode 100644 BaseTools/Source/Python/AutoGen/GenVar.py
> create mode 100644 BaseTools/Source/Python/Workspace/DecBuildData.py
> create mode 100644 BaseTools/Source/Python/Workspace/DscBuildData.py
> create mode 100644 BaseTools/Source/Python/Workspace/InfBuildData.py
>
>--
>2.8.0.windows.1
next prev parent reply other threads:[~2017-12-21 8:14 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-01 14:58 [Patch 00/14] Enable Structure PCD support in edk2 Liming Gao
2017-12-21 7:11 ` Zeng, Star
2017-12-21 7:15 ` Zeng, Star
2017-12-21 8:18 ` Gao, Liming [this message]
2017-12-25 9:36 ` Gao, Liming
2017-12-25 10:04 ` Ard Biesheuvel
2017-12-25 10:10 ` Gao, Liming
2017-12-25 10:14 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A89E2EF3DFEDB4C8BFDE51014F606A14E195264@SHSMSX104.ccr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox