{\rtf1\ansi\ansicpg1252\deff0\deflang1033\deflangfe2052\deftab360{\fonttbl{\f0\fswiss\fprq2\fcharset0 Verdana;}{\f1\froman\fprq2\fcharset0 Times New Roman;}{\f2\fswiss\fprq2\fcharset0 Arial;}}
\pard\nowidctlpar\sb200\cf2\b0\fs18 PatchPcdValue tool sets the specific value into the binary image according to the input PCD offset and type. When PCD type is VOID*, MaxSize must be specified to say how much value need to be updated. This tool checks whether the input PCD information is valid for the input binary image, but doesn\rquote t check the format of the binary image. \f1\par
\f0 PatchPcdValue tool usually works together with GenPatchPcdTable tool to set the specific value of a patchable PCD into the binary EFI image. \f1\par
\pard\nowidctlpar\li360\sb200\b0\f0 PCD value will be updated into the image. For VOID* type PCD value, if the start string is \ldblquote L \ldblquote , the input string will be unicode string, if the start string is \ldblquote\{\ldblquote and the end string is \ldblquote\}\rdblquote , the input string will be byte array, or the input string will be ASCII string.\f1\par
\pard\nowidctlpar\sb200\cf2\b0\fs18 1. Patch 0x80000000 to the patchable PcdDebugPrintErrorLevel in the binary PeiCore image. This PCD type is UINT32. Its offset in PeiCore image is 0x6F80 got by GenPatchPcdTable tool.\f1\par
\b\f0 PatchPcdValue.exe -f 0x6F80 \endash u 0x80000000 \endash t UINT32 PeiCore.efi\f1\par
\b0\f0 2. Patch the unicode string \ldblquote Test\rdblquote to the patchable PcdHelloWorldPrintString in the binary HelloWorld image. This PCD type is VOID*. Its max byte array size is 0x40, and its offset in HelloWorld image is 0x3050.\f1\par