From: "Liming Gao" <liming.gao@intel.com>
To: "Zhang, Shenglei" <shenglei.zhang@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Fan, ZhijuX" <zhijux.fan@intel.com>,
"Feng, Bob C" <bob.c.feng@intel.com>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
"Leif Lindholm" <leif.lindholm@linaro.org>,
"Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [PATCH] Platform/Intel:Change the way of getting the env file content
Date: Tue, 2 Jul 2019 13:27:14 +0000 [thread overview]
Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14E4A12A8@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <20190702010220.12692-1-shenglei.zhang@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
> -----Original Message-----
> From: Zhang, Shenglei
> Sent: Tuesday, July 2, 2019 9:02 AM
> To: devel@edk2.groups.io
> Cc: Fan, ZhijuX <zhijux.fan@intel.com>; Gao, Liming <liming.gao@intel.com>; Feng, Bob C <bob.c.feng@intel.com>; Ard Biesheuvel
> <ard.biesheuvel@linaro.org>; Leif Lindholm <leif.lindholm@linaro.org>; Kinney, Michael D <michael.d.kinney@intel.com>
> Subject: [PATCH] Platform/Intel:Change the way of getting the env file content
>
> From: "Fan, Zhiju" <zhijux.fan@intel.com>
>
> The env file content can not be retrieved by using the
> original method, so we change the way to read the content.
> And we change the env file to original format.
>
> This patch is going to fix the issue.
>
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Bob Feng <bob.c.feng@intel.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Cc: Leif Lindholm <leif.lindholm@linaro.org>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com>
> ---
> Platform/Intel/Tools/GenBiosId/BiosId.env | 1 -
> Platform/Intel/Tools/GenBiosId/GenBiosId.py | 33 ++++++++++++---------
> 2 files changed, 19 insertions(+), 15 deletions(-)
>
> diff --git a/Platform/Intel/Tools/GenBiosId/BiosId.env b/Platform/Intel/Tools/GenBiosId/BiosId.env
> index dfdeeb3107..614a66ddb8 100644
> --- a/Platform/Intel/Tools/GenBiosId/BiosId.env
> +++ b/Platform/Intel/Tools/GenBiosId/BiosId.env
> @@ -18,7 +18,6 @@
> # SPDX-License-Identifier: BSD-2-Clause-Patent
> #
> ##
> -[config]
> BOARD_ID = KBLRVP3
> BOARD_REV = 1
> BOARD_EXT = 000
> diff --git a/Platform/Intel/Tools/GenBiosId/GenBiosId.py b/Platform/Intel/Tools/GenBiosId/GenBiosId.py
> index 7e9d115f05..31abb24d31 100644
> --- a/Platform/Intel/Tools/GenBiosId/GenBiosId.py
> +++ b/Platform/Intel/Tools/GenBiosId/GenBiosId.py
> @@ -16,7 +16,7 @@ import struct
> import datetime
> import argparse
> import platform
> -
> +from collections import OrderedDict
> try:
> from configparser import ConfigParser
> except:
> @@ -24,8 +24,6 @@ except:
>
> # Config message
> _BIOS_Signature = "$IBIOSI$"
> -_SectionKeyName = '__name__'
> -_SectionName = 'config'
>
> _ConfigItem = {
> "BOARD_ID": {'Value': '', 'Length': 7},
> @@ -121,20 +119,26 @@ def CheckOptions(Options):
> EdkLogger("GenBiosId", FILE_NOT_FOUND, ExtraData="Input file not found")
> return InputFile, OutputFile, OutputTextFile
>
> +# Read input file and get config
> +def ReadInputFile(InputFile):
> + InputDict = OrderedDict()
> + with open(InputFile) as File:
> + FileLines = File.readlines()
> + for Line in FileLines:
> + if Line.strip().startswith('#'):
> + continue
> + if '=' in Line:
> + Key, Value = Line.split('=')
> + InputDict[Key.strip()] = Value.strip()
> + return InputDict
> +
>
> # Parse the input file and extract the information
> -def ParserInputFile(InputFile):
> - cf = ConfigParser()
> - cf.optionxform = str
> - cf.read(InputFile)
> - if _SectionName not in cf._sections:
> - EdkLogger("GenBiosId", FORMAT_NOT_SUPPORTED, ExtraData=_ConfigSectionNotDefine)
> - for Item in cf._sections[_SectionName]:
> - if Item == _SectionKeyName:
> - continue
> +def ParserInputFile(InputDict):
> + for Item in InputDict:
> if Item not in _ConfigItem:
> EdkLogger("GenBiosId", FORMAT_INVALID, ExtraData=_ConfigItemInvalid % Item)
> - _ConfigItem[Item]['Value'] = cf._sections[_SectionName][Item]
> + _ConfigItem[Item]['Value'] = InputDict[Item]
> if len(_ConfigItem[Item]['Value']) != _ConfigItem[Item]['Length']:
> EdkLogger("GenBiosId", FORMAT_INVALID, ExtraData=_ConfigLenInvalid % Item)
> for Item in _ConfigItem:
> @@ -168,7 +172,8 @@ def PrintOutputFile(OutputFile, OutputTextFile, Id_Str):
> def Main():
> Options = MyOptionParser()
> InputFile, OutputFile, OutputTextFile = CheckOptions(Options)
> - Id_Str = ParserInputFile(InputFile)
> + InputDict = ReadInputFile(InputFile)
> + Id_Str = ParserInputFile(InputDict)
> PrintOutputFile(OutputFile, OutputTextFile, Id_Str)
> return 0
>
> --
> 2.18.0.windows.1
prev parent reply other threads:[~2019-07-02 13:27 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-02 1:02 [PATCH] Platform/Intel:Change the way of getting the env file content Zhang, Shenglei
2019-07-02 13:27 ` Liming Gao [this message]
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=4A89E2EF3DFEDB4C8BFDE51014F606A14E4A12A8@SHSMSX104.ccr.corp.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