#;****************************************************************************** #;* Copyright (c) 1983-2019, Insyde Software Corporation. All Rights Reserved. #;* #;* You may not reproduce, distribute, publish, display, perform, modify, adapt, #;* transmit, broadcast, present, recite, release, license or otherwise exploit #;* any part of this publication in any form, by any means, without the prior #;* written permission of Insyde Software Corporation. #;* #;****************************************************************************** # This tool compile environment is reference from Kernel H20 05.03.11\BaseTools [Build procedure.] Step 1. Execute ProjectBuild.bat, cd to BaseTools folder 2. "toolsetup.bat %cd%" 3. "SET Base_Tools_Path=%cd%" 4. "SET Arch=" 5. Cd to ChipsetPkg\Tools 6. "SET CHIPSET_TOOL_PATH=%cd%" 7. Cd to ChipsetPkg\Tools\Source\C\{Tool_Source_Folder} 8. Execute "nmake all" 9. EXE tool will generate on ChipsetPkg\Tools\Bin\Win32 or Win64 #================================================================================================================================================ GpioShellTool tool [Build procedure] Step 1. Copy string $(CHIPSET_PKG)/Tools/Source/Shell/GpioShellTool/GpioShellTool.inf to TigerLakeChipsetPkg\Package.dsc [Components.X64] 2. Execute "nmake uefi64" 3. will generate on Build\TigerLakeMultiBoardPkg\RELEASE_DEVTLS\X64\TigerChipsetPkg\Tools\Source\Shell\GpioShellTool\GpioShellTool\OUTPUT [Version] 2.01 [Usage] GpioShellTool [/b] GpioShellTool [/m] Use ESC and Ctrl+C to interrupt GpioShellTool process. [Options] /b Get Board Id. /m Read gpio information then transparent content into matrix. /? Help document. Examples: GpioShelltool /b GpioShelltool /m #================================================================================================================================================ Build procedure for Python code Step 1. Install Python Interpreter from https://www.python.org/downloads/Python 2.7.6 2. Install "Convert Python source code to .exe file" cx_freeze https://pypi.python.org/pypi/cx_Freeze/4.3.3 3. Python and cxfreeze version must be the same 4. Copy Tools\Source\Python\*.* to step1 folder\Scripts 6. Compile example: C:\Python27\Scripts>cxfreeze python\fitinfo\fitinfo.py 7. Ready tool will occur on step1 folder\Scripts\dist\fitinfo.exe & _ctypes.pyd 8. Copy them to TigerLakeChipsetPkg\Tools\Bin\Win32 (Chipset tool location) #================================================================================================================================================ GpioToPcd tool The purpose of this tool is to make engineers modify the GPIO values much more easily. This tool will transfer the values of the GPIO Table (in a fixed format) to the format which Pcd needs. The example of the fixed format of GPIO Table is attached as Example.txt. Engineers just need to modify your own GPIO values in the Example.txt, transfer it by this tool, and paste the result to Pcd. This tool must be excuted under Kernel H20 BaseTools.(The tool needs python25.dll.) Step 1. Execute ProjectBuild.bat of any H2O 5.0 Source code. 2. Go to the path where GpioToPcd.exe is. Ex: D:\SkyLake\KabylakeMultiBoardPkg>cd D:\GpioToPcd 3. Type in "GpioToPcd.exe Example.txt PcdResult.txt" where the 2 txt file names are the arguments. (Sample Example.txt file path: KabylakeChipsetPkg\Tools\Source\Python\GpioToPcd) 4. Check the result file PcdResult.txt which is generated automatically. [Version] 2.00 [Usage] GpioToPcd.exe argv1 argv2 argv1: The file in the fixed format of your GPIO Table. argv2: The file name which will be generated by this tool. #================================================================================================================================================ TransRcGpioTable tool The purpose of this tool is to make engineers modify the GPIO values much more easily. This tool will transfer the values of the GPIO Table (in a fixed format) to the format which Pcd needs. The example of the fixed format of GPIO Table is attached as Example.txt. Engineers just need to modify your own GPIO values in the Example.txt, transfer it by this tool, and paste the result to Pcd. This tool must be excuted under Kernel H20 BaseTools.(The tool needs python25.dll.) Step 1. Execute ProjectBuild.bat of any H2O 5.0 Source code. 2. Go to the path where TransRcGpioTable.exe is. Ex: D:\SkyLake\KabylakeMultiBoardPkg>cd D:\TransRcGpioTable 3. Type in "TransRcGpioTable.exe RcGpioTableSample.txt PcdResult.txt" where the 2 txt file names are the arguments. (RcGpioTableSample.txt file path: KabylakeChipsetPkg\Tools\Source\Python\TransRcGpioTable) 4. Check the result file PcdResult.txt which is generated automatically. Note 1. RcGpioTableSample.txt reference from SkylakePlatSamplePkg\Library\PeiPlatformHookLib\GpioTableXXXXX.h 2. Do not input the hole original GpioTableXXXXX.h to the tool, please refer to the RcGpioTableSample.txt. [Version] 1.00 [Usage] TransRcGpioTable.exe argv1 argv2 argv1: The file in the fixed format of RC GPIO Table. argv2: The file name which will be generated by this tool. #================================================================================================================================================ Linux GCC The Linux build feature only guarantees successful build under Linux, there are still problems on booting the system, it is not supposed to public this feature to customers until it can work properly. Build procedure. Step *1. Copy the BroadwellChipsetPkg/Tools/LinuxGccBuildSupport folder to BaseTools. 2. Run the BASH file . InstallLinuxBuildSupport $WORKSPACE *3. Rename the ClientRefCodePkg.dec to BroadwellRcPkg.dec 4. Under BroadwellMultiBoardPkg make Uefi64 Note. *1 should be removed after kernel have a Tag Svn repository. *3 was the same issue as IB05670232. #================================================================================================================================================