From 4eb373e2b3882be36ddf8aebfb5f32a168a35c2f Mon Sep 17 00:00:00 2001 From: lushifex Date: Tue, 19 Dec 2017 16:28:35 +0800 Subject: Build Script. Add build script for E0 stepping LeafHill FAB D CRB board. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: lushifex --- BuildBIOS.bat | 4 ++- BuildBIOS.sh | 12 ++++++++- Platform/BroxtonPlatformPkg/BuildBxtBios.bat | 20 +++++++++++++++ Platform/BroxtonPlatformPkg/BuildBxtBios.sh | 29 +++++++++++++++++++++- Platform/BroxtonPlatformPkg/BuildIFWI.bat | 13 ++++++++++ Platform/BroxtonPlatformPkg/BuildIFWI.sh | 10 ++++++++ .../SmBiosMiscDxe/MiscSystemManufacturerFunction.c | 7 ++++++ .../Common/Tools/Stitch/IFWIStitch_Simple.bat | 11 ++++++++ .../BroxtonSiPkg/Include/Library/SteppingLib.h | 3 ++- .../BroxtonSiPkg/Library/SteppingLib/SteppingLib.c | 6 ++++- 10 files changed, 110 insertions(+), 5 deletions(-) diff --git a/BuildBIOS.bat b/BuildBIOS.bat index 051c0a9d69..96c34f9d85 100644 --- a/BuildBIOS.bat +++ b/BuildBIOS.bat @@ -54,11 +54,13 @@ echo /m Set the build thread count to number of processors echo /vs13 Set Compiler to vs2013 build (default: vs2013) echo /x64 Set Arch to X64 (default: X64) echo /IA32 Set Arch to IA32 (default: X64) -echo /A Set FabId to A (default: FAB_B) +echo /A Set FabId to A echo /B Set FabId to B (default: FAB_B) +echo /D Set FabId to D echo /MN MinnowBoard 3(default: MN) echo /MX MinnowBoard 3 Module echo /BG Benson Glacier Board +echo /LH LeafHill CRB Board echo PlatformName: Broxton echo BuildTargets: Release, Debug diff --git a/BuildBIOS.sh b/BuildBIOS.sh index b8d21d7af0..91d6bd63d3 100755 --- a/BuildBIOS.sh +++ b/BuildBIOS.sh @@ -21,8 +21,10 @@ function Usage () { echo " Build_Flags: /MN MinnowBoard3 (default: MN)" echo " Build_Flags: /BG Benson Glacier Board" echo " Build_Flags: /MX MinnowBoard3 Module" - echo " Build_Flags: /A Set FabId to A (default: FAB_B)" + echo " Build_Flags: /LH LeafHill CRB Board" + echo " Build_Flags: /A Set FabId to A " echo " Build_Flags: /B Set FabId to B (default: FAB_B)" + echo " Build_Flags: /D Set FabId to D " echo " PlatformName [optional]: Broxton " echo " Target_Flag: Release, Debug " echo @@ -64,6 +66,14 @@ for (( i=1; i<=$#; )) BoardId=MX Build_Flags="$Build_Flags /MX" shift + elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/LH" ]; then + BoardId=LH + Build_Flags="$Build_Flags /LH" + shift + elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/D" ]; then + FabId=D + Build_Flags="$Build_Flags /D" + shift elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/B" ]; then FabId=B Build_Flags="$Build_Flags /B" diff --git a/Platform/BroxtonPlatformPkg/BuildBxtBios.bat b/Platform/BroxtonPlatformPkg/BuildBxtBios.bat index 994bb3a120..5aa545e50e 100644 --- a/Platform/BroxtonPlatformPkg/BuildBxtBios.bat +++ b/Platform/BroxtonPlatformPkg/BuildBxtBios.bat @@ -165,6 +165,12 @@ if /i "%~1"=="/B" ( shift goto OptLoop ) +if /i "%~1"=="/D" ( + set FabId=D + echo. + shift + goto OptLoop +) if /i "%~1"=="/MN" ( set BoardId=MN echo. @@ -183,6 +189,12 @@ if /i "%~1"=="/MX" ( shift goto OptLoop ) +if /i "%~1"=="/LH" ( + set BoardId=LH + echo. + shift + goto OptLoop +) if /i "%~1"=="/m" ( if defined NUMBER_OF_PROCESSORS ( set /a build_threads=%NUMBER_OF_PROCESSORS% @@ -209,6 +221,8 @@ if /i "%~1" == "%Minnow_RVP%" ( set BOARD_ID=BENSONV ) else if %BoardId%==MX ( set BOARD_ID=M3MODUL + ) else if %BoardId%==LH ( + set BOARD_ID=LEAFHIL ) set ENBDT_PF_BUILD=TRUE set PLATFORM_NAME=BroxtonPlatformPkg @@ -285,6 +299,12 @@ if %BoardId%==MX ( ) ) +if %BoardId%==LH ( + if %FabId%==D ( + echo BOARD_REV = D >> Conf\BiosId.env + ) +) + :: Set the Build_Type, Version_Major, and Version_Minor environment variables find /v "#" Conf\BiosId.env > ver_strings for /f "tokens=1,3" %%i in (ver_strings) do set %%i=%%j diff --git a/Platform/BroxtonPlatformPkg/BuildBxtBios.sh b/Platform/BroxtonPlatformPkg/BuildBxtBios.sh index ef261e6818..74aa7826eb 100755 --- a/Platform/BroxtonPlatformPkg/BuildBxtBios.sh +++ b/Platform/BroxtonPlatformPkg/BuildBxtBios.sh @@ -107,6 +107,12 @@ for (( i=1; i<=$#; )) elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/MX" ]; then BoardId=MX shift + elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/LH" ]; then + BoardId=LH + shift + elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/D" ]; then + FabId=D + shift elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/B" ]; then FabId=B shift @@ -138,9 +144,14 @@ if [ $BoardId == "MN" ]; then elif [ $BoardId == "MX" ]; then BOARD_ID=M3MO echo BOARD_ID = M3MODUL >> $WORKSPACE/Conf/BiosId.env -else +elif [ $BoardId == "BG" ]; then BOARD_ID=BEN1 echo BOARD_ID = BENSONV >> $WORKSPACE/Conf/BiosId.env +elif [ $BoardId == "LH" ]; then + BOARD_ID=LEAF + echo BOARD_ID = LEAFHIL >> $WORKSPACE/Conf/BiosId.env +else + break fi ENBDT_PF_BUILD=TRUE @@ -212,6 +223,13 @@ if [ $BoardId == "MX" ]; then fi fi +if [ $BoardId == "LH" ]; then + if [ $FabId == "D" ]; then + BOARD_REV=D + echo BOARD_REV = D >> $WORKSPACE/Conf/BiosId.env + fi +fi + ##********************************************************************** ## Additional EDK Build Setup/Configuration ##********************************************************************** @@ -353,6 +371,15 @@ if [ $BoardId == "MX" ]; then fi fi +if [ $BoardId == "LH" ]; then + if [ $FabId == "D" ]; then + cp -f $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Binaries/IFWI/LeafHill/FAB_D/SpiChunk1.bin $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Tools/Stitch + cp -f $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Binaries/IFWI/LeafHill/FAB_D/SpiChunk2.bin $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Tools/Stitch + cp -f $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Binaries/IFWI/LeafHill/FAB_D/SpiChunk3.bin $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Tools/Stitch + cp -f $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Binaries/IFWI/LeafHill/FAB_D/GCC/NvStorage.Fv $WORKSPACE/Platform/BroxtonPlatformPkg/Common/Tools/Stitch + fi +fi + # # Assmeble components # diff --git a/Platform/BroxtonPlatformPkg/BuildIFWI.bat b/Platform/BroxtonPlatformPkg/BuildIFWI.bat index 556bd4abbd..274210310a 100644 --- a/Platform/BroxtonPlatformPkg/BuildIFWI.bat +++ b/Platform/BroxtonPlatformPkg/BuildIFWI.bat @@ -93,6 +93,12 @@ if /i "%~1"=="/B" ( shift goto OptLoop ) +if /i "%~1"=="/D" ( + set FabId=D + set Build_Flags=%Build_Flags% /D + shift + goto OptLoop +) if /i "%~1"=="/MN" ( set BoardId=MN set Build_Flags=%Build_Flags% /MN @@ -113,6 +119,13 @@ if /i "%~1"=="/MX" ( goto OptLoop ) +if /i "%~1"=="/LH" ( + set BoardId=LH + set Build_Flags=%Build_Flags% /LH + shift + goto OptLoop +) + if /i "%~1"=="/m" ( set buildthread=/m echo. diff --git a/Platform/BroxtonPlatformPkg/BuildIFWI.sh b/Platform/BroxtonPlatformPkg/BuildIFWI.sh index 33dd24972a..6138fb4810 100755 --- a/Platform/BroxtonPlatformPkg/BuildIFWI.sh +++ b/Platform/BroxtonPlatformPkg/BuildIFWI.sh @@ -22,8 +22,10 @@ function Usage () { echo " Build_Flags: /MN Minnowboard 3 (default) " echo " Build_Flags: /BG Benson Glacier Board " echo " Build_Flags: /MX Minnowboard 3 Next " + echo " Build_Flags: /LH LeafHill CRB Board " echo " Build_Flags: /A Set FabId to A" echo " Build_Flags: /B Set FabId to B (default)" + echo " Build_Flags: /D Set FabId to D" echo " Platform_Type [optional]: Broxton " echo " Build_Target: Release, Debug " echo @@ -71,6 +73,14 @@ for (( i=1; i<=$#; )) BoardId=MX Build_Flags="$Build_Flags /MX" shift + elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/LH" ]; then + BoardId=LH + Build_Flags="$Build_Flags /LH" + shift + elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/D" ]; then + FabId=D + Build_Flags="$Build_Flags /D" + shift elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "/B" ]; then FabId=B Build_Flags="$Build_Flags /B" diff --git a/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c b/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c index bcb0c51574..1878ce5742 100644 --- a/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c +++ b/Platform/BroxtonPlatformPkg/Common/Features/Smbios/SmBiosMiscDxe/MiscSystemManufacturerFunction.c @@ -144,6 +144,13 @@ AddSmbiosManuCallback ( HiiSetString (mHiiHandle, STRING_TOKEN (STR_MISC_SYSTEM_VERSION), Buffer, NULL); DEBUG ((EFI_D_ERROR, "C0 Stepping Detected\n")); break; + case BxtPE0: + UnicodeSPrint (Buffer, sizeof (Buffer), L"%s%s", PlatformNameBuffer, L"E0 PLATFORM"); + HiiSetString (mHiiHandle, STRING_TOKEN (STR_MISC_SYSTEM_PRODUCT_NAME), Buffer, NULL); + UnicodeSPrint (Buffer, sizeof (Buffer), L"%s", L"E0"); + HiiSetString (mHiiHandle, STRING_TOKEN (STR_MISC_SYSTEM_VERSION), Buffer, NULL); + DEBUG ((EFI_D_ERROR, "E0 Stepping Detected\n")); + break; default: DEBUG ((EFI_D_ERROR, "Unknow Stepping Detected\n")); break; diff --git a/Platform/BroxtonPlatformPkg/Common/Tools/Stitch/IFWIStitch_Simple.bat b/Platform/BroxtonPlatformPkg/Common/Tools/Stitch/IFWIStitch_Simple.bat index 01e56c5040..4c1fcb1882 100644 --- a/Platform/BroxtonPlatformPkg/Common/Tools/Stitch/IFWIStitch_Simple.bat +++ b/Platform/BroxtonPlatformPkg/Common/Tools/Stitch/IFWIStitch_Simple.bat @@ -52,6 +52,10 @@ if /i "%~3"=="MX" ( set BoardId=MX ) +if /i "%~3"=="LH" ( + set BoardId=LH +) + :OptLoop1 if /i "%~1"=="/FspW" ( @@ -112,6 +116,8 @@ if /i "!Platform_Type!"=="MINN" ( set Platform_Type=BENS ) else if /i "!Platform_Type!"=="M3MO" ( set Platform_Type=M3MO +) else if /i "!Platform_Type!"=="LEAF" ( + set Platform_Type=LEAF ) else ( echo Error - Unsupported PlatformType: !Platform_Type! goto Usage @@ -165,6 +171,11 @@ if %BoardId%==BG ( copy /y /b ..\..\Binaries\IFWI\MinnowBoard3Next\FAB_A\SpiChunk2.bin . copy /y /b ..\..\Binaries\IFWI\MinnowBoard3Next\FAB_A\SpiChunk3.bin . copy /y /b SpiChunk1.bin+.\BIOS_COMPONENTS\IBBL.Fv+.\BIOS_COMPONENTS\IBB.Fv+SpiChunk2.bin+.\BIOS_COMPONENTS\OBB.Fv+.\BIOS_COMPONENTS\NvStorage.Fv+SpiChunk3.bin spi_out.bin +) else if %BoardId%==LH ( + copy /y /b ..\..\Binaries\IFWI\LeafHill\FAB_D\SpiChunk1.bin . + copy /y /b ..\..\Binaries\IFWI\LeafHill\FAB_D\SpiChunk2.bin . + copy /y /b ..\..\Binaries\IFWI\LeafHill\FAB_D\SpiChunk3.bin . + copy /y /b SpiChunk1.bin+.\BIOS_COMPONENTS\IBBL.Fv+.\BIOS_COMPONENTS\IBB.Fv+SpiChunk2.bin+.\BIOS_COMPONENTS\OBB.Fv+.\BIOS_COMPONENTS\NvStorage.Fv+SpiChunk3.bin spi_out.bin ) move /y spi_out.bin %BIOS_ID%.bin >> Stitching.log diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/Include/Library/SteppingLib.h b/Silicon/BroxtonSoC/BroxtonSiPkg/Include/Library/SteppingLib.h index c14911bba5..f27da4696f 100644 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/Include/Library/SteppingLib.h +++ b/Silicon/BroxtonSoC/BroxtonSiPkg/Include/Library/SteppingLib.h @@ -1,7 +1,7 @@ /** @file Get Soc ID library implementation. - Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2014 - 2017, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -42,6 +42,7 @@ typedef enum { BxtPB0 = 0x50, BxtPB1, BxtPB2, + BxtPE0 = 0x60, BxtSteppingMax = 0xFF } BXT_STEPPING; diff --git a/Silicon/BroxtonSoC/BroxtonSiPkg/Library/SteppingLib/SteppingLib.c b/Silicon/BroxtonSoC/BroxtonSiPkg/Library/SteppingLib/SteppingLib.c index d4930d1ced..64ea5769ce 100644 --- a/Silicon/BroxtonSoC/BroxtonSiPkg/Library/SteppingLib/SteppingLib.c +++ b/Silicon/BroxtonSoC/BroxtonSiPkg/Library/SteppingLib/SteppingLib.c @@ -1,7 +1,7 @@ /** @file This file contains routines that get Soc Stepping. - Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2014 - 2017, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -110,6 +110,10 @@ BxtStepping ( DEBUG ((DEBUG_INFO, "BXTP-B2 detected!\n")); return BxtPB2; break; + case V_SA_MC_RID_C: + DEBUG ((DEBUG_INFO, "BXTP-E0 detected!\n")); + return BxtPE0; + break; default: DEBUG ((DEBUG_ERROR, "Unsupported BXT-P stepping.\n")); return BxtSteppingMax; -- cgit v1.2.3