public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Liming Gao <liming.gao@intel.com>
To: edk2-devel@lists.01.org
Subject: [Patch v2] Dsc Spec: Add the syntax to initialize structure PCD with C style value
Date: Tue,  8 Jan 2019 13:53:14 +0800	[thread overview]
Message-ID: <20190108055314.14980-1-liming.gao@intel.com> (raw)

In V2:
Update Pcd Field value assignment with array index.

BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1292

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com>
Cc: Bob Feng <bob.c.feng@intel.com>
---
 3_edk_ii_dsc_file_format/33_platform_dsc_definition.md | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md b/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md
index 0ff9d9d..07f10d6 100644
--- a/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md
+++ b/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md
@@ -192,7 +192,7 @@ The following are common definitions used by multiple section types.
 <BoolType>             ::= {<BoolVal>} {"{"<BoolVal>"}"}
 <MACRO>                ::= (A-Z)(A-Z0-9_)*
 <MACROVAL>             ::= "$(" <MACRO> ")"
-<PcdFieldName>         ::= <TokenSpaceGuidCName> "." <PcdCName> "." <Field>
+<PcdFieldName>         ::= <TokenSpaceGuidCName> "." <PcdCName> ["["<Number>"]"]* "." <Field>
 <PcdName>              ::= <TokenSpaceGuidCName> "." <PcdCName>
 <PcdCName>             ::= <CName>
 <TokenSpaceGuidCName>  ::= <CName>
@@ -239,10 +239,11 @@ The following are common definitions used by multiple section types.
 <StringVal>            ::= {<UnicodeString>} {<CString>} {<Array>}
 <Array>                ::= "{" {<Array>} {[<Lable>] <ArrayVal>
                            [<CommaSpace> [<Lable>] <ArrayVal>]* } "}"
-<ArrayVal>             ::= {<Num8Array>} {<GuidStr>} {<DevicePath>}
+<ArrayVal>             ::= {<Num8Array>} {<GuidStr>} {<DevicePath>} {<CodeStr>}
 <NonNumType>           ::= {<BoolVal>} {<UnicodeString>} {<CString>}
                            {<Offset>} {<UintMac>}
 <GuidStr>              ::= "GUID(" <GuidVal> ")"
+<CodeStr>              ::= "CODE(" <CData> ")"
 <GuidVal>              ::= {<DblQuote> <RegistryFormatGUID> <DblQuote>}
                            {<CFormatGUID>} {<CName>}
 <DevicePath>           ::= "DEVICE_PATH(" <DevicePathStr> ")"
@@ -345,6 +346,11 @@ All C data arrays used in PCD value fields must be byte arrays. The C format
 GUID style is a special case that is permitted in some fields that use the
 `<CArray>` nomenclature.
 
+**_CData_**
+
+All C data used in PCD value CODE syntax can be C style value to initialize 
+C structure or Array in C source code.
+
 **_EOL_**
 
 The DOS End Of Line: "0x0D 0x0A" character must be used for all EDK II
-- 
2.13.0.windows.1



             reply	other threads:[~2019-01-08  5:53 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-08  5:53 Liming Gao [this message]
2019-01-08  7:41 ` [Patch v2] Dsc Spec: Add the syntax to initialize structure PCD with C style value Feng, Bob C

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=20190108055314.14980-1-liming.gao@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