D.1 EDK II Build System Output File Format
The output file generated by the EDK II build system (if a VPD_TOOL_GUID
entry appears in the [Defines]
section of the DSC file) is a text file.
Summary
The file is generated by the EDK II build system to be consumed by the tool,
specified by GUID in the Conf/tools_def.txt
file. The file is generated in
the Platform FV directory using the GUID value of the VPD_TOOL_GUID
for the
filename. This is a registry format GUID.
Prototype
<GUID.txt> ::= <AutoGenHeading> <PcdEntry>*
<PcdEntry> ::= <PcdName> <FS> <Offset> <FS> <SizeValue> <EOL>
<Offset> ::= {<HexNumber>} {"*"}
<SizeValue> ::= if (pcddatumtype == "BOOLEAN"): {<one>} {"*"} {""} "|"
{"0x0"} {"0x1"} elif (pcddatumtype == "UINT8"): {<one>}
{"*"} {""} "|" <UINT8z> elif (pcddatumtype == "UINT16"):
{<two>} {"*"} {""} "|" {<UINT16z> elif (pcddatumtype ==
"UINT32"): {<four>} {"*"} {""} "|" {<UINT32z> elif
(pcddatumtype == "UINT64"): {<eight>} {"*"} {""} "|"
<UINT64z> else:
{<NumValUint32>} {"*"} {""} "|" <CArray>
<one> ::= {"1"} {"0x1"} {"0x01"}
<two> ::= {"2"} {"0x2"} {"0x02"}
<four> ::= {"4"} {"0x4"} {"0x04"}
<eight> ::= {"8"} {"0x8"} {"0x08"}
<CArray> ::= "{" <Byte> ["," [<SP>] <Byte>]* "}"
<Byte> ::= "0x" <Hex> [<Hex>]
<Hex> ::= {<Num>} {"a"} {"A"} {"b"} {"B"} {"c"} {"C"} {"d"}
{"D"} {"e"} {"E"} {"f"} {"F"}
<Num> ::= {"0"} {"1"} {"2"} {"3"} {"4"} {"5"} {"6"} {"7"} {"8"}
{"9"}
<SP> ::= 0x020
<AutoGenHeading> ::= "## @file" <EOL> "#" <EOL>
"# THIS IS AUTO-GENERATED FILE BY BUILD TOOLS"
" AND PLEASE DO NOT MAKE MODIFICATION." <EOL>
"#" <EOL>
"# This file lists all VPD informations for a"
" platform collected by build.exe." <EOL>
"#" <EOL>
"# Copyright (c) 2010, Intel Corporation. All"
" rights reserved.<BR>"
Vpd Data Files
"# This program and the accompanying materials"
"# are licensed and made available under the" " terms and
conditions of the BSD License"
"# which accompanies this distribution. The"
" full text of the license may be found at"
"# "
"http://opensource.org/licenses/bsd-license.php"
<EOL> "#" <EOL>
"# THE PROGRAM IS DISTRIBUTED UNDER THE BSD"
" LICENSE ON AN \"AS IS\" BASIS,"
"# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY"
" KIND, EITHER EXPRESS OR IMPLIED."
"#" <EOL>
Example
## @file
#
# THIS IS AUTO-GENERATED FILE BY BUILD TOOLS AND PLEASE DO NOT MAKE MODIFICATION.
#
# This file lists all VPD informations for a platform collected by build.exe.
#
# Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php
#
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|*|4|800
gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|*|4|600
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow|*|4|25
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn|*|4|80