public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Zeng, Star" <star.zeng@intel.com>
To: "Feng, Bob C" <bob.c.feng@intel.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Chiu, Chasel" <chasel.chiu@intel.com>,
	"Desimone, Nathaniel L" <nathaniel.l.desimone@intel.com>,
	Yunhua Feng <fengyunhua@byosoft.com.cn>,
	"Liu, Zhiguang" <zhiguang.liu@intel.com>,
	"Zeng, Star" <star.zeng@intel.com>
Subject: Re: [edk2-devel] [Patch V2] IntelFsp2Pkg/Tools: Fixed PatchFv.py to parse new Fv map file format
Date: Wed, 18 Nov 2020 03:47:52 +0000	[thread overview]
Message-ID: <DM6PR11MB4058A200F44B4B853C9C835BE3E10@DM6PR11MB4058.namprd11.prod.outlook.com> (raw)
In-Reply-To: <DM6PR11MB40736626B8674C66C23E51C7C9E10@DM6PR11MB4073.namprd11.prod.outlook.com>

Oh, get the point.

-----Original Message-----
From: Feng, Bob C <bob.c.feng@intel.com> 
Sent: Wednesday, November 18, 2020 10:41 AM
To: Zeng, Star <star.zeng@intel.com>; devel@edk2.groups.io
Cc: Chiu, Chasel <chasel.chiu@intel.com>; Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>; Yunhua Feng <fengyunhua@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>
Subject: RE: [edk2-devel] [Patch V2] IntelFsp2Pkg/Tools: Fixed PatchFv.py to parse new Fv map file format

Star, 

Thanks for review. This patch try to match the new .map file format, if not match, it will try to match the old format and then do the original logic. I think it would be better not changing the original logic in this patch.

Thanks,
Bob

-----Original Message-----
From: Zeng, Star <star.zeng@intel.com>
Sent: Wednesday, November 18, 2020 10:24 AM
To: devel@edk2.groups.io; Feng, Bob C <bob.c.feng@intel.com>
Cc: Chiu, Chasel <chasel.chiu@intel.com>; Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>; Yunhua Feng <fengyunhua@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Zeng, Star <star.zeng@intel.com>
Subject: RE: [edk2-devel] [Patch V2] IntelFsp2Pkg/Tools: Fixed PatchFv.py to parse new Fv map file format

Reviewed-by: Star Zeng <star.zeng@intel.com> with a very minor comment inline.

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Bob 
> Feng
> Sent: Monday, November 16, 2020 10:24 AM
> To: devel@edk2.groups.io
> Cc: Chiu, Chasel <chasel.chiu@intel.com>; Desimone, Nathaniel L 
> <nathaniel.l.desimone@intel.com>; Zeng, Star <star.zeng@intel.com>; 
> Yunhua Feng <fengyunhua@byosoft.com.cn>; Liu, Zhiguang 
> <zhiguang.liu@intel.com>
> Subject: [edk2-devel] [Patch V2] IntelFsp2Pkg/Tools: Fixed PatchFv.py 
> to parse new Fv map file format
> 
> The commit 76e8aac158b0717fa27f12e4d008f79161ddb050 changed Fv map 
> format.
> It added the image type to better support source level debug. But it 
> broke the function of PatchFv.py because PatchFv.py also consume Fv map file.
> 
> This patch is to update PatchFv.py to make it work again.
> 
> Signed-off-by: Bob Feng <bob.c.feng@intel.com>
> Cc: Chasel Chiu <chasel.chiu@intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
> Cc: Star Zeng <star.zeng@intel.com>
> Cc: Yunhua Feng <fengyunhua@byosoft.com.cn>
> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
> ---
> 
> V2: Support both the old Fv map file format and new Fv map file format.
> 
> 
>  IntelFsp2Pkg/Tools/PatchFv.py | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/IntelFsp2Pkg/Tools/PatchFv.py 
> b/IntelFsp2Pkg/Tools/PatchFv.py index 0c8d908063..112de4077a 100644
> --- a/IntelFsp2Pkg/Tools/PatchFv.py
> +++ b/IntelFsp2Pkg/Tools/PatchFv.py
> @@ -359,20 +359,23 @@ class Symbols:
>          rptLine  = fdIn.readline()
> 
>          modName  = ""
> 
>          foundModHdr = False
> 
>          while (rptLine != "" ):
> 
>              if rptLine[0] != ' ':
> 
> -                #DxeIpl (Fixed Flash Address, BaseAddress=0x00fffb4310,
> EntryPoint=0x00fffb4958)
> 
> -                #(GUID=86D70125-BAA3-4296-A62F-
> 602BEBBB9081 .textbaseaddress=0x00fffb4398 .databaseaddress=0x00fffb41
> 78)
> 
> -                match = re.match("([_a-zA-Z0-9\-]+)\s\(.+BaseAddress=(0x[0-9a-fA-
> F]+),\s+EntryPoint=(0x[0-9a-fA-F]+)\)", rptLine)
> 
> +                #DxeIpl (Fixed Flash Address, 
> + BaseAddress=0x00fffb4310,
> EntryPoint=0x00fffb4958,Type=PE)
> 
> +                match =
> + re.match("([_a-zA-Z0-9\-]+)\s\(.+BaseAddress=(0x[0-9a-
> fA-F]+),\s+EntryPoint=(0x[0-9a-fA-F]+),\s*Type=\w+\)", rptLine)
> 
> +                if match is None:
> 
> +                    #DxeIpl (Fixed Flash Address, 
> + BaseAddress=0x00fffb4310,
> EntryPoint=0x00fffb4958)
> 
> +                    match =
> + re.match("([_a-zA-Z0-9\-]+)\s\(.+BaseAddress=(0x[0-9a-
> fA-F]+),\s+EntryPoint=(0x[0-9a-fA-F]+)\)", rptLine)
> 
>                  if match is not None:

Could here use 'else' ?

Thanks,
Star

> 
>                      foundModHdr = True
> 
>                      modName = match.group(1)
> 
>                      if len(modName) == 36:
> 
>                         modName =
> self.dictGuidNameXref[modName.upper()]
> 
>                      self.dictModBase['%s:BASE'  % modName] = int 
> (match.group(2),
> 16)
> 
>                      self.dictModBase['%s:ENTRY' % modName] = int 
> (match.group(3),
> 16)
> 
> +                #(GUID=86D70125-BAA3-4296-A62F-
> 602BEBBB9081 .textbaseaddress=0x00fffb4398 .databaseaddress=0x00fffb41
> 78)
> 
>                  match = re.match("\(GUID=([A-Z0-9\-
> ]+)\s+\.textbaseaddress=(0x[0-9a-fA-F]+)\s+\.databaseaddress=(0x[0-9a-
> fA-
> F]+)\)", rptLine)
> 
>                  if match is not None:
> 
>                      if foundModHdr:
> 
>                          foundModHdr = False
> 
>                      else:
> 
> --
> 2.29.1.windows.1
> 
> 
> 
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#67597): 
> https://edk2.groups.io/g/devel/message/67597
> Mute This Topic: https://groups.io/mt/78284512/1779220
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub
> [star.zeng@intel.com] -=-=-=-=-=-=
> 


  reply	other threads:[~2020-11-18  3:47 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-16  2:24 [Patch V2] IntelFsp2Pkg/Tools: Fixed PatchFv.py to parse new Fv map file format Bob Feng
2020-11-18  2:24 ` [edk2-devel] " Zeng, Star
2020-11-18  2:41   ` Bob Feng
2020-11-18  3:47     ` Zeng, Star [this message]
2020-11-18  5:35       ` 回复: " gaoliming
2020-11-19  6:24 ` Chiu, Chasel
2020-11-19  7:29   ` Bob Feng

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=DM6PR11MB4058A200F44B4B853C9C835BE3E10@DM6PR11MB4058.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