From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.43; helo=mga05.intel.com; envelope-from=liming.gao@intel.com; receiver=edk2-devel@lists.01.org Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) (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 11B9822603AFC for ; Thu, 15 Mar 2018 21:35:49 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Mar 2018 21:42:13 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.48,313,1517904000"; d="scan'208";a="211830220" Received: from shwde7172.ccr.corp.intel.com ([10.239.9.15]) by fmsmga006.fm.intel.com with ESMTP; 15 Mar 2018 21:42:12 -0700 From: Liming Gao To: edk2-devel@lists.01.org Cc: Michael Kinney , Yonghong Zhu Date: Fri, 16 Mar 2018 12:41:52 +0800 Message-Id: <1521175314-6672-2-git-send-email-liming.gao@intel.com> X-Mailer: git-send-email 2.8.0.windows.1 In-Reply-To: <1521175314-6672-1-git-send-email-liming.gao@intel.com> References: <1521175314-6672-1-git-send-email-liming.gao@intel.com> Subject: [Patch 1/3] DSCSpecification: Add syntax to support SKU ID inherit from another SKU ID X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Mar 2018 04:35:49 -0000 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao Cc: Michael Kinney Cc: Yonghong Zhu --- 2_dsc_overview/25_[skuids]_section_processing.md | 11 +++++++---- 3_edk_ii_dsc_file_format/37_[skuids]_section.md | 10 ++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/2_dsc_overview/25_[skuids]_section_processing.md b/2_dsc_overview/25_[skuids]_section_processing.md index afd102e..70b98b1 100644 --- a/2_dsc_overview/25_[skuids]_section_processing.md +++ b/2_dsc_overview/25_[skuids]_section_processing.md @@ -34,16 +34,19 @@ The contents of this section are used to define valid `SKUID_IDENTIFIER` names. Since a platform may support different SKUs, and different SKUs may implement different methods for handing platform configuration data (PCD) the user can -define, in this section, tag names to use. Use `0` for the `DEFAULT` SKU -identifier. Each entry below the section header is of the form: +define, in this section, tag names to use. One SKU may override some settings +in another SKU setting, and inherit other setting from it. If not specified, +SKU will inherit DEFAULT SKU setting. Use `0` for the `DEFAULT` SKU identifier. +Each entry below the section header is of the form: -`Number | word` +`Number | word [|word]` The following is an example of a `[SkuIds]` section: ``` [SkuIds] + 0|DEFAULT 1|Sku_Two 22|Sku1 - 5|SkuSeven + 5|SkuSeven | Sku1 #SkuSeven inherits Sku1 setting. ``` diff --git a/3_edk_ii_dsc_file_format/37_[skuids]_section.md b/3_edk_ii_dsc_file_format/37_[skuids]_section.md index 756ded2..8e70b33 100644 --- a/3_edk_ii_dsc_file_format/37_[skuids]_section.md +++ b/3_edk_ii_dsc_file_format/37_[skuids]_section.md @@ -37,8 +37,9 @@ The `[SkuIds]` section is optional in all EDK II DSC files. Entries may appear in any order. This section lists numeric mappings to the SKU ID User Interface Name, only valid values from this list can be specified in -the defines section. Use of the `!include` statement is supported; it is -recommended that a ".txt" extension be used. +the defines section. If one SKU inherits from none DEFAULT SKU, it can specify +its parent SKU User Name after its definition. Use of the `!include` statement +is supported; it is recommended that a ".txt" extension be used. If this section is not specified, the parsing tools will assume a SkuId of 0, with a `UiName` of "DEFAULT". The default entry must not be re-defined. @@ -51,7 +52,7 @@ The `!include` file can only contain an ASCII (not Unicode) list of ```c ::= "[SkuIds]" {*} {} - ::= + ::= [ ] ::= ``` @@ -60,5 +61,6 @@ The `!include` file can only contain an ASCII (not Unicode) list of ```ini [SkuIds] 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required. - 1|SkuTwo + 1|SkuOne + 2|SkuTwo|SkuOne # SkuTwo setting inherits from SkuOne ``` -- 2.8.0.windows.1