if os.path.exists(VpdMapFilePath):\r
OrgVpdFile.Read(VpdMapFilePath)\r
PcdItems = OrgVpdFile.GetOffset(PcdNvStoreDfBuffer[0])\r
- NvStoreOffset = PcdItems[0].strip() if PcdItems else '0'\r
+ NvStoreOffset = PcdItems.values()[0].strip() if PcdItems else '0'\r
else:\r
EdkLogger.error("build", FILE_READ_FAILURE, "Can not find VPD map file %s to fix up VPD offset." % VpdMapFilePath)\r
\r
PcdKey in VpdPcdDict:\r
Pcd = VpdPcdDict[PcdKey]\r
SkuValueMap = {}\r
+ DefaultSku = Pcd.SkuInfoList.get('DEFAULT')\r
+ if DefaultSku:\r
+ PcdValue = DefaultSku.DefaultValue\r
+ if PcdValue not in SkuValueMap:\r
+ SkuValueMap[PcdValue] = []\r
+ VpdFile.Add(Pcd, 'DEFAULT',DefaultSku.VpdOffset)\r
+ SkuValueMap[PcdValue].append(DefaultSku)\r
+\r
for (SkuName,Sku) in Pcd.SkuInfoList.items():\r
Sku.VpdOffset = Sku.VpdOffset.strip()\r
PcdValue = Sku.DefaultValue\r
EdkLogger.error("build", FORMAT_INVALID, 'The offset value of PCD %s.%s should be %s-byte aligned.' % (Pcd.TokenSpaceGuidCName, Pcd.TokenCName, Alignment))\r
if PcdValue not in SkuValueMap:\r
SkuValueMap[PcdValue] = []\r
- VpdFile.Add(Pcd, Sku.VpdOffset)\r
+ VpdFile.Add(Pcd, SkuName,Sku.VpdOffset)\r
SkuValueMap[PcdValue].append(Sku)\r
# if the offset of a VPD is *, then it need to be fixed up by third party tool.\r
if not NeedProcessVpdMapFile and Sku.VpdOffset == "*":\r
if not FoundFlag :\r
# just pick the a value to determine whether is unicode string type\r
SkuValueMap = {}\r
+ DefaultSku = DscPcdEntry.SkuInfoList.get('DEFAULT')\r
+ if DefaultSku:\r
+ PcdValue = DefaultSku.DefaultValue\r
+ if PcdValue not in SkuValueMap:\r
+ SkuValueMap[PcdValue] = []\r
+ VpdFile.Add(DscPcdEntry, 'DEFAULT',Sku.VpdOffset)\r
+ SkuValueMap[PcdValue].append(Sku)\r
for (SkuName,Sku) in DscPcdEntry.SkuInfoList.items():\r
Sku.VpdOffset = Sku.VpdOffset.strip() \r
\r
EdkLogger.error("build", FORMAT_INVALID, 'The offset value of PCD %s.%s should be %s-byte aligned.' % (DscPcdEntry.TokenSpaceGuidCName, DscPcdEntry.TokenCName, Alignment))\r
if PcdValue not in SkuValueMap:\r
SkuValueMap[PcdValue] = []\r
- VpdFile.Add(DscPcdEntry, Sku.VpdOffset)\r
+ VpdFile.Add(DscPcdEntry, SkuName,Sku.VpdOffset)\r
SkuValueMap[PcdValue].append(Sku)\r
if not NeedProcessVpdMapFile and Sku.VpdOffset == "*":\r
NeedProcessVpdMapFile = True \r