From: "Chiu, Chasel" <chasel.chiu@intel.com>
To: "Duggapu, Chinni B" <chinni.b.duggapu@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Desimone, Nathaniel L" <nathaniel.l.desimone@intel.com>,
"Zeng, Star" <star.zeng@intel.com>,
"Kuo, Ted" <ted.kuo@intel.com>
Subject: Re: [PATCH v3] IntelFsp2Pkg/Tools: Enhance PathFv.py to patch Fd file directly
Date: Mon, 17 Apr 2023 05:40:43 +0000 [thread overview]
Message-ID: <BN9PR11MB548318D2E48049BAD565EE0BE69C9@BN9PR11MB5483.namprd11.prod.outlook.com> (raw)
In-Reply-To: <57bb69fe722c4e736d0fb9b892380ed2c95bd2b1.1681705360.git.chinni.b.duggapu@intel.com>
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com>
Thanks,
Chasel
> -----Original Message-----
> From: Duggapu, Chinni B <chinni.b.duggapu@intel.com>
> Sent: Sunday, April 16, 2023 9:23 PM
> To: devel@edk2.groups.io
> Cc: Duggapu, Chinni B <chinni.b.duggapu@intel.com>; Chiu, Chasel
> <chasel.chiu@intel.com>; Desimone, Nathaniel L
> <nathaniel.l.desimone@intel.com>; Zeng, Star <star.zeng@intel.com>; Kuo, Ted
> <ted.kuo@intel.com>
> Subject: [PATCH v3] IntelFsp2Pkg/Tools: Enhance PathFv.py to patch Fd file
> directly
>
> From: "Duggapu, Chinni B" <chinni.b.duggapu@intel.com>
>
> https://bugzilla.tianocore.org/show_bug.cgi?id=4412
>
> After shrinking the FSP (FV) component using FMMT, Image size in FSP info
> header is not in sync with the FV length in FV header.
> This enhancement helps to patch the FSP image size offset with correct length &
> can be used to patch any offset directly on the FSP Component Fd.
>
> Cc: Chasel Chiu <chasel.chiu@intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
> Cc: Star Zeng <star.zeng@intel.com>
> Cc: Ted Kuo <ted.kuo@intel.com>
> Signed-off-by: Duggapu Chinni B <chinni.b.duggapu@intel.com>
> ---
> IntelFsp2Pkg/Tools/PatchFv.py | 14 ++++++++++++-
> .../Tools/UserManuals/PatchFvUserManual.md | 20 +++++++++++++++++++
> 2 files changed, 33 insertions(+), 1 deletion(-)
>
> diff --git a/IntelFsp2Pkg/Tools/PatchFv.py b/IntelFsp2Pkg/Tools/PatchFv.py
> index eb130049b5..73ab877c71 100644
> --- a/IntelFsp2Pkg/Tools/PatchFv.py
> +++ b/IntelFsp2Pkg/Tools/PatchFv.py
> @@ -165,6 +165,17 @@ class Symbols:
> if not os.path.isdir(fvDir): raise Exception ("'%s' is not a valid
> directory!" % fvDir) + #+ # if user provided fd name as a input, skip rest of
> the flow to+ # patch fd directly+ #+ fdFile =
> os.path.join(fvDir,fvNames + ".fd")+ if os.path.exists(fdFile):+
> print("Tool identified Fd file as a input to patch '%s'" %fdFile)+ self.fdFile =
> fdFile+ self.fdSize = os.path.getsize(fdFile)+ return 0+ # # If
> the Guid.xref is not existing in fvDir, then raise an exception #@@ -848,8
> +859,9 @@ class Symbols:
> # Print out the usage # def Usage():- print ("PatchFv Version 0.50")+ print
> ("PatchFv Version 0.60") print ("Usage: \n\tPatchFv FvBuildDir
> [FvFileBaseNames:]FdFileBaseNameToPatch \"Offset, Value\"")+ print
> ("\tPatchFv FdFileDir FdFileName \"Offset, Value\"") def main(): #diff --git
> a/IntelFsp2Pkg/Tools/UserManuals/PatchFvUserManual.md
> b/IntelFsp2Pkg/Tools/UserManuals/PatchFvUserManual.md
> index 5f1031e729..f28eedf625 100644
> --- a/IntelFsp2Pkg/Tools/UserManuals/PatchFvUserManual.md
> +++ b/IntelFsp2Pkg/Tools/UserManuals/PatchFvUserManual.md
> @@ -1,6 +1,7 @@
> #Name **_PatchFv.py_** - The python script that patches the firmware
> volumes (**FV**) with in the flash device (**FD**) file post FSP build.+From
> version 0.60, script is capable of patching flash device (**FD**) directly.
> #Synopsis @@ -10,6 +11,12 @@ PatchFv FvBuildDir
> [FvFileBaseNames:]FdFileBaseNameToPatch ["Offset, Value"]+
> | ["Offset, Value, $Command"]+ | ["Offset, Value, $Command,
> @Comment"]+ ```+```+PatchFv FdFileDir FdFileName ["Offset, Value"]++ |
> ["Offset, Value, @Comment"]++ | ["Offset, Value, $Command"]++ | ["Offset,
> Value, $Command, @Comment"]++``` #Description The **_PatchFv.py_** tool
> allows the developer to fix up FD images to follow the@@ -102,6 +109,19 @@
> ModuleGuid:Offset
> < > Convert absolute address <expr> into an image offset (expr & FSP_SIZE)
> ```+From version 0.60 tool allows to pass flash device file path as Argument 1
> and+flash device name as Argument 2 and rules for passing offset & value are
> same+as explained in the previous sections.++####Example usage:+Argument
> 1+```+ YouPlatformFspBinPkg\+```+Argument 2+```+ Fsp_Rebased_T+```
> ###Special Commands: Special commands must use the **$** symbol as a
> prefix to the command itself.--
> 2.39.1.windows.1
next prev parent reply other threads:[~2023-04-17 5:40 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-17 4:22 [PATCH v3] IntelFsp2Pkg/Tools: Enhance PathFv.py to patch Fd file directly cbduggap
2023-04-17 5:40 ` Chiu, Chasel [this message]
2023-04-18 6:10 ` Chiu, Chasel
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=BN9PR11MB548318D2E48049BAD565EE0BE69C9@BN9PR11MB5483.namprd11.prod.outlook.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