# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
#\r
+from __future__ import absolute_import\r
from io import BytesIO\r
from Common.Misc import *\r
from Common.StringUtils import StringToArray\r
# Variable length, need to calculate one by one\r
#\r
assert(Index < len(self.RawDataList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += len(self.RawDataList[ItemIndex])\r
else:\r
Offset = self.ItemSize * Index\r
\r
PackStr = PACK_CODE_BY_SIZE[self.ItemSize]\r
\r
- Buffer = bytearray()\r
+ Buffer = ''\r
for Datas in self.RawDataList:\r
if type(Datas) in (list, tuple):\r
for Data in Datas:\r
DbItemList.__init__(self, ItemSize, DataList, RawDataList)\r
\r
def PackData(self):\r
- Buffer = bytearray()\r
+ Buffer = ''\r
PackStr = "=LHH"\r
for Datas in self.RawDataList:\r
Buffer += pack(PackStr,\r
assert(False)\r
else:\r
assert(Index < len(self.RawDataList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += len(self.RawDataList[ItemIndex]) * self.ItemSize\r
\r
return Offset\r
def PackData(self):\r
PackStr = PACK_CODE_BY_SIZE[self.ItemSize]\r
\r
- Buffer = bytearray()\r
+ Buffer = ''\r
for DataList in self.RawDataList:\r
for Data in DataList:\r
if type(Data) in (list, tuple):\r
\r
def PackData(self):\r
PackStr = "=LLHHLHH"\r
- Buffer = bytearray()\r
+ Buffer = ''\r
for DataList in self.RawDataList:\r
for Data in DataList:\r
Buffer += pack(PackStr,\r
# Variable length, need to calculate one by one\r
#\r
assert(Index < len(self.RawDataList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += len(self.RawDataList[ItemIndex])\r
else:\r
for innerIndex in range(Index):\r
\r
def PackData(self):\r
PackStr = "=LL"\r
- Buffer = bytearray()\r
+ Buffer = ''\r
for Data in self.RawDataList:\r
Buffer += pack(PackStr,\r
GetIntegerValue(Data[0]),\r
return length * self.ItemSize\r
def PackData(self):\r
PackStr = "=H"\r
- Buffer = bytearray()\r
+ Buffer = ''\r
for Data in self.RawDataList:\r
Buffer += pack(PackStr,\r
GetIntegerValue(Data[0]))\r
assert(len(RawDataList) == len(LenList))\r
DataList = []\r
# adjust DataList according to the LenList\r
- for Index in range(len(RawDataList)):\r
+ for Index in xrange(len(RawDataList)):\r
Len = LenList[Index]\r
RawDatas = RawDataList[Index]\r
assert(Len >= len(RawDatas))\r
ActualDatas = []\r
- for i in range(len(RawDatas)):\r
+ for i in xrange(len(RawDatas)):\r
ActualDatas.append(RawDatas[i])\r
- for i in range(len(RawDatas), Len):\r
+ for i in xrange(len(RawDatas), Len):\r
ActualDatas.append(0)\r
DataList.append(ActualDatas)\r
self.LenList = LenList\r
Offset = 0\r
\r
assert(Index < len(self.LenList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += self.LenList[ItemIndex]\r
\r
return Offset\r
DbVardefValueUint32 = DbItemList(4, RawDataList = VardefValueUint32)\r
VpdHeadValue = Dict['VPD_DB_VALUE']\r
DbVpdHeadValue = DbComItemList(4, RawDataList = VpdHeadValue)\r
- ExMapTable = list(zip(Dict['EXMAPPING_TABLE_EXTOKEN'], Dict['EXMAPPING_TABLE_LOCAL_TOKEN'], Dict['EXMAPPING_TABLE_GUID_INDEX']))\r
+ ExMapTable = zip(Dict['EXMAPPING_TABLE_EXTOKEN'], Dict['EXMAPPING_TABLE_LOCAL_TOKEN'], Dict['EXMAPPING_TABLE_GUID_INDEX'])\r
DbExMapTable = DbExMapTblItemList(8, RawDataList = ExMapTable)\r
LocalTokenNumberTable = Dict['LOCAL_TOKEN_NUMBER_DB_VALUE']\r
DbLocalTokenNumberTable = DbItemList(4, RawDataList = LocalTokenNumberTable)\r
PcdNameOffsetTable = Dict['PCD_NAME_OFFSET']\r
DbPcdNameOffsetTable = DbItemList(4, RawDataList = PcdNameOffsetTable)\r
\r
- SizeTableValue = list(zip(Dict['SIZE_TABLE_MAXIMUM_LENGTH'], Dict['SIZE_TABLE_CURRENT_LENGTH']))\r
+ SizeTableValue = zip(Dict['SIZE_TABLE_MAXIMUM_LENGTH'], Dict['SIZE_TABLE_CURRENT_LENGTH'])\r
DbSizeTableValue = DbSizeTableItemList(2, RawDataList = SizeTableValue)\r
InitValueUint16 = Dict['INIT_DB_VALUE_UINT16']\r
DbInitValueUint16 = DbComItemList(2, RawDataList = InitValueUint16)\r
\r
# Get offset of SkuId table in the database\r
SkuIdTableOffset = FixedHeaderLen\r
- for DbIndex in range(len(DbTotal)):\r
+ for DbIndex in xrange(len(DbTotal)):\r
if DbTotal[DbIndex] is SkuidValue:\r
break\r
SkuIdTableOffset += DbItemTotal[DbIndex].GetListSize()\r
for (LocalTokenNumberTableIndex, (Offset, Table)) in enumerate(LocalTokenNumberTable):\r
DbIndex = 0\r
DbOffset = FixedHeaderLen\r
- for DbIndex in range(len(DbTotal)):\r
+ for DbIndex in xrange(len(DbTotal)):\r
if DbTotal[DbIndex] is Table:\r
DbOffset += DbItemTotal[DbIndex].GetInterOffset(Offset)\r
break\r
(VariableHeadGuidIndex, VariableHeadStringIndex, SKUVariableOffset, VariableOffset, VariableRefTable, VariableAttribute) = VariableEntryPerSku[:]\r
DbIndex = 0\r
DbOffset = FixedHeaderLen\r
- for DbIndex in range(len(DbTotal)):\r
+ for DbIndex in xrange(len(DbTotal)):\r
if DbTotal[DbIndex] is VariableRefTable:\r
DbOffset += DbItemTotal[DbIndex].GetInterOffset(VariableOffset)\r
break\r
\r
# calculate various table offset now\r
DbTotalLength = FixedHeaderLen\r
- for DbIndex in range(len(DbItemTotal)):\r
+ for DbIndex in xrange(len(DbItemTotal)):\r
if DbItemTotal[DbIndex] is DbLocalTokenNumberTable:\r
LocalTokenNumberTableOffset = DbTotalLength\r
elif DbItemTotal[DbIndex] is DbExMapTable:\r
Index = 0\r
for Item in DbItemTotal:\r
Index +=1\r
- b = bytes(Item.PackData())\r
+ b = Item.PackData()\r
Buffer += b\r
if Index == InitTableNum:\r
if len(Buffer) % 8:\r
totallenbuff = pack("=L", totallen)\r
newbuffer = databasebuff[:32]\r
for i in range(4):\r
- newbuffer += bytes([totallenbuff[i]])\r
+ newbuffer += totallenbuff[i]\r
for i in range(36, totallen):\r
- newbuffer += bytes([databasebuff[i]])\r
+ newbuffer += databasebuff[i]\r
\r
return newbuffer\r
\r
AdditionalAutoGenH, AdditionalAutoGenC, PcdDbBuffer, VarCheckTab = CreatePcdDatabasePhaseSpecificAutoGen (Platform, DynamicPcdSet_Sku[(skuname, skuid)], Phase)\r
final_data = ()\r
for item in PcdDbBuffer:\r
- final_data += unpack("B", bytes([item]))\r
+ final_data += unpack("B", item)\r
PcdDBData[(skuname, skuid)] = (PcdDbBuffer, final_data)\r
PcdDriverAutoGenData[(skuname, skuid)] = (AdditionalAutoGenH, AdditionalAutoGenC)\r
VarCheckTableData[(skuname, skuid)] = VarCheckTab\r
AdditionalAutoGenH, AdditionalAutoGenC, PcdDbBuffer, VarCheckTab = CreatePcdDatabasePhaseSpecificAutoGen (Platform, {}, Phase)\r
final_data = ()\r
for item in PcdDbBuffer:\r
- final_data += unpack("B", bytes([item]))\r
+ final_data += unpack("B", item)\r
PcdDBData[(TAB_DEFAULT, "0")] = (PcdDbBuffer, final_data)\r
\r
return AdditionalAutoGenH, AdditionalAutoGenC, CreatePcdDataBase(PcdDBData)\r
\r
DbValueList.append(Sku.DefaultValue)\r
\r
- Pcd.TokenTypeList = sorted(set(Pcd.TokenTypeList))\r
+ Pcd.TokenTypeList = list(set(Pcd.TokenTypeList))\r
if Pcd.DatumType == TAB_VOID:\r
Dict['SIZE_TABLE_CNAME'].append(CName)\r
Dict['SIZE_TABLE_GUID'].append(TokenSpaceGuid)\r
Dict['PCD_CNAME_LENGTH'][GeneratedTokenNumber] = len(CNameBinArray.split(","))\r
\r
\r
- Pcd.TokenTypeList = sorted(set(Pcd.TokenTypeList))\r
+ Pcd.TokenTypeList = list(set(Pcd.TokenTypeList))\r
\r
# search the Offset and Table, used by LocalTokenNumberTableOffset\r
if 'PCD_TYPE_HII' in Pcd.TokenTypeList:\r