## @file\r
# process FD generation\r
#\r
-# Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
#\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
import Region\r
import Fv\r
import Common.LongFilePathOs as os\r
-import StringIO\r
+from io import BytesIO\r
import sys\r
from struct import *\r
from GenFdsGlobalVariable import GenFdsGlobalVariable\r
from Common.BuildToolError import *\r
from Common.Misc import SaveFileOnChange\r
from GenFds import GenFds\r
+from Common.DataType import BINARY_FILE_TYPE_FV\r
\r
## generate FD\r
#\r
# @retval string Generated FD file name\r
#\r
def GenFd (self, Flag = False):\r
- if self.FdUiName.upper() + 'fd' in GenFds.ImageBinDict.keys():\r
+ if self.FdUiName.upper() + 'fd' in GenFds.ImageBinDict:\r
return GenFds.ImageBinDict[self.FdUiName.upper() + 'fd']\r
\r
#\r
HasCapsuleRegion = True\r
break\r
if HasCapsuleRegion:\r
- TempFdBuffer = StringIO.StringIO('')\r
+ TempFdBuffer = BytesIO('')\r
PreviousRegionStart = -1\r
PreviousRegionSize = 1\r
\r
GenFdsGlobalVariable.VerboseLogger('Call each region\'s AddToBuffer function')\r
RegionObj.AddToBuffer (TempFdBuffer, self.BaseAddress, self.BlockSizeList, self.ErasePolarity, GenFds.ImageBinDict, self.vtfRawDict, self.DefineVarDict)\r
\r
- FdBuffer = StringIO.StringIO('')\r
+ FdBuffer = BytesIO('')\r
PreviousRegionStart = -1\r
PreviousRegionSize = 1\r
for RegionObj in self.RegionList :\r
# Call each region's AddToBuffer function\r
#\r
GenFdsGlobalVariable.VerboseLogger('Call each region\'s AddToBuffer function')\r
- RegionObj.AddToBuffer (FdBuffer, self.BaseAddress, self.BlockSizeList, self.ErasePolarity, GenFds.ImageBinDict, self.vtfRawDict, self.DefineVarDict,Flag=Flag)\r
+ RegionObj.AddToBuffer (FdBuffer, self.BaseAddress, self.BlockSizeList, self.ErasePolarity, GenFds.ImageBinDict, self.vtfRawDict, self.DefineVarDict, Flag=Flag)\r
#\r
# Write the buffer contents to Fd file\r
#\r
FvAddDict ={}\r
FvList = []\r
for RegionObj in self.RegionList:\r
- if RegionObj.RegionType == 'FV':\r
+ if RegionObj.RegionType == BINARY_FILE_TYPE_FV:\r
if len(RegionObj.RegionDataList) == 1:\r
RegionData = RegionObj.RegionDataList[0]\r
FvList.append(RegionData.upper())\r
- FvAddDict[RegionData.upper()] = (int(self.BaseAddress,16) + \\r
+ FvAddDict[RegionData.upper()] = (int(self.BaseAddress, 16) + \\r
RegionObj.Offset, RegionObj.Size)\r
else:\r
Offset = RegionObj.Offset\r
Size = 0\r
for blockStatement in FvObj.BlockSizeList:\r
Size = Size + blockStatement[0] * blockStatement[1]\r
- FvAddDict[RegionData.upper()] = (int(self.BaseAddress,16) + \\r
+ FvAddDict[RegionData.upper()] = (int(self.BaseAddress, 16) + \\r
Offset, Size)\r
Offset = Offset + Size\r
#\r