From 5e4ebd9ea5d72c1a2824d23a5dc92c7b50694719 Mon Sep 17 00:00:00 2001 From: Ching JenX Cheng Date: Thu, 1 Aug 2019 12:16:46 +0800 Subject: [PATCH] IntelFsp2Pkg: Improve FSP Python scripts to support 3.x. BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=2041 When running with Python 3.x and relying on GenCfgOpt.py to automatically assign UPD offsets, the script crashed because some float type variable not compatible with the operations. Converted those float variable to int to fix these issues. Cc: Amy Chan Cc: Chasel Chiu Cc: Nate DeSimone Cc: Star Zeng Signed-off-by: Ching JenX Cheng Reviewed-by: Chasel Chiu --- IntelFsp2Pkg/Tools/GenCfgOpt.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/IntelFsp2Pkg/Tools/GenCfgOpt.py b/IntelFsp2Pkg/Tools/GenCfgOpt.py index a42717caae..2fa7582d85 100644 --- a/IntelFsp2Pkg/Tools/GenCfgOpt.py +++ b/IntelFsp2Pkg/Tools/GenCfgOpt.py @@ -715,7 +715,7 @@ EndList if (ConfigDict['embed'].find(':END') != -1): Remainder = Offset % (MaxAlign/8) # MaxAlign is either 32 or 64 if Remainder: - Diff = (MaxAlign/8) - Remainder + Diff = int((MaxAlign/8) - Remainder) Offset = Offset + Diff ItemOffset = ItemOffset + Diff MaxAlign = 32 # Reset to default 32 align when struct end @@ -727,7 +727,7 @@ EndList Remainder = Offset % max(ItemLength/8, 4, SizeAlign) Offset = Offset + ItemLength if Remainder: - Diff = max(ItemLength/8, 4, SizeAlign) - Remainder + Diff = int(max(ItemLength/8, 4, SizeAlign) - Remainder) ItemOffset = ItemOffset + Diff ConfigDict['offset'] = ItemOffset @@ -1416,7 +1416,7 @@ EndList if BitsRemain: BsfFd.write(" Skip %d bits\n" % BitsRemain) BitsGap -= BitsRemain - BytesRemain = BitsGap / 8 + BytesRemain = int(BitsGap / 8) if BytesRemain: BsfFd.write(" Skip %d bytes\n" % BytesRemain) NextOffset = Item['offset'] + Item['length']