summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BuildBIOS.sh18
-rw-r--r--Platform/BroxtonPlatformPkg/BuildAll.sh12
-rw-r--r--Platform/BroxtonPlatformPkg/BuildBios.sh102
-rw-r--r--Platform/BroxtonPlatformPkg/BuildIFWI.sh17
-rw-r--r--Platform/BroxtonPlatformPkg/Common/Tools/GenBiosId/GenBiosIdbin0 -> 12236 bytes
-rw-r--r--Platform/BroxtonPlatformPkg/PlatformDsc/BuildOptions.EDKII.Gcc.dsc108
-rw-r--r--Platform/BroxtonPlatformPkg/PlatformPkgX64Gcc.dsc181
7 files changed, 376 insertions, 62 deletions
diff --git a/BuildBIOS.sh b/BuildBIOS.sh
new file mode 100644
index 0000000000..cc1cb783c8
--- /dev/null
+++ b/BuildBIOS.sh
@@ -0,0 +1,18 @@
+#
+# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php
+#
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+
+export WORKSPACE=`pwd`
+export PACKAGES_PATH=$WORKSPACE:$WORKSPACE/Core:$WORKSPACE/Silicon/:$WORKSPACE/Platform:$WORKSPACE/Platform/BroxtonPlatformPkg:$WORKSPACE/Silicon/BroxtonSoC:$WORKSPACE/Platform/BroxtonPlatformPkg/Common
+
+. edksetup.sh
+
+./Platform/BroxtonPlatformPkg/BuildIFWI.sh APLI Release
+
diff --git a/Platform/BroxtonPlatformPkg/BuildAll.sh b/Platform/BroxtonPlatformPkg/BuildAll.sh
index 2a2afd686d..8d5d803bb0 100644
--- a/Platform/BroxtonPlatformPkg/BuildAll.sh
+++ b/Platform/BroxtonPlatformPkg/BuildAll.sh
@@ -1,3 +1,15 @@
+#
+# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php
+#
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+
+
##**********************************************************************
## Function define
##**********************************************************************
diff --git a/Platform/BroxtonPlatformPkg/BuildBios.sh b/Platform/BroxtonPlatformPkg/BuildBios.sh
index be44009035..8702fbeaa7 100644
--- a/Platform/BroxtonPlatformPkg/BuildBios.sh
+++ b/Platform/BroxtonPlatformPkg/BuildBios.sh
@@ -1,3 +1,14 @@
+#
+# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php
+#
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+
##**********************************************************************
## Function define
##**********************************************************************
@@ -12,12 +23,11 @@ echo -e $(date)
##**********************************************************************
## Initial Setup
##**********************************************************************
-#WORKSPACE=$(pwd)
-EDK_TOOLS_PATH=
+
Build_Flags=
SV_String=_
exitCode=0
-Arch=IA32
+Arch=X64
## Initialize all the build flags to FALSE
## depending on the cmd line input, some will be set to TRUE prior to building
@@ -59,11 +69,12 @@ fi
## Override tools_def.txt
#cp $WORKSPACE\BaseTools\Conf\tools_def.template $WORKSPACE\Conf\tools_def.txt
+#:: Override tools_def.txt
+echo Creating Conf folder and build config files...
+cp $WORKSPACE/BaseTools/Conf/target.template $WORKSPACE/Conf/target.txt
+cp $WORKSPACE/BaseTools/Conf/tools_def.template $WORKSPACE/Conf/tools_def.txt
+cp $WORKSPACE/BaseTools/Conf/build_rule.template $WORKSPACE/Conf/build_rule.txt
-## Setup EDK environment. Edksetup puts new copies of target.txt, tools_def.txt, build_rule.txt in WorkSpace\Conf
-## Also run edksetup as soon as possible to avoid it from changing environment variables we're overriding
-##. edksetup.sh > /dev/null
-. edksetup.sh
## Get gcc version to determine which tool_def.template to use.
## If gcc version is 4.6 or before, use default. If not, use new one.
@@ -78,11 +89,10 @@ else
fi
#make -C BaseTools > /dev/null
-make -C BaseTools
## Define platform specific environment variables.
-PLATFORM_NAME=BxtPlatformPkg
-PLATFORM_PACKAGE=Platform/BxtPlatformPkg
+PLATFORM_NAME=BroxtonPlatformPkg
+PLATFORM_PACKAGE=Platform/BroxtonPlatformPkg
EFI_SOURCE=$WORKSPACE
EDK_SOURCE=$WORKSPACE
@@ -149,36 +159,16 @@ if [ "$2" == "" ]; then
fi
## Remove the values for Platform_Type and Build_Target from BiosId.env and stage in Conf/
-cp $PLATFORM_PACKAGE/BiosId.env Conf/BiosId.env
-sed -i '/^BOARD_ID/d' Conf/BiosId.env
-sed -i '/^BUILD_TYPE/d' Conf/BiosId.env
-
-## BOARD_ID needs to be exactly 7 characters (GenBiosId.exe limitation)
-echo "Setting $1 platform configuration and BIOS ID..."
-if [ "$(echo $1 | tr 'a-z' 'A-Z')" == "$eNB_RVP" ]; then ## Lower case to upper case
- BOARD_ID="$eNB_RVP"RVP
- echo BOARD_ID = "$eNB_RVP"RVP >> Conf/BiosId.env
- ENBDT_PF_BUILD=TRUE
- PLATFORM_NAME=AplPlatSamplePkg
- PLATFORM_PACKAGE=Platform/AplPlatSamplePkg
-
-elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "$Phblt_RVP" ]; then
- BOARD_ID="$Phblt_RVP"RVP
- echo BOARD_ID = "$Phblt_RVP"RVP >> Conf/BiosId.env
- TABLET_PF_BUILD=TRUE
-
-elif [ "$(echo $1 | tr 'a-z' 'A-Z')" == "$Embd_RVP" ]; then
- BOARD_ID="$Embd_RVP"RVP
- echo BOARD_ID = "$Embd_RVP"RVP >> Conf/BiosId.env
- BYTI_PF_BUILD=TRUE
- PLATFORM_PACKAGE=Platform/IsgPlatPkg
+cp $WORKSPACE/$PLATFORM_PACKAGE/BiosId.env $WORKSPACE/Conf/BiosId.env
+sed -i '/^BOARD_ID/d' $WORKSPACE/Conf/BiosId.env
+sed -i '/^BUILD_TYPE/d' $WORKSPACE/Conf/BiosId.env
-else
- echo "Error - Unsupported PlatformType: $1"
- echo "Please review the Help screen "/?""
- ErrorExit
-fi
-
+
+BOARD_ID=MNW3
+echo BOARD_ID = MINNOW3 >> $WORKSPACE/Conf/BiosId.env
+ENBDT_PF_BUILD=TRUE
+PLATFORM_NAME=BroxtonPlatformPkg
+PLATFORM_PACKAGE=Platform/BroxtonPlatformPkg
Platform_Type=$1
## Create new DefineAtBuildMacros.dsc file
@@ -209,11 +199,11 @@ fi
if [ "$(echo $2 | tr 'a-z' 'A-Z')" == "RELEASE" ]; then
TARGET=RELEASE
BUILD_TYPE=R
- echo BUILD_TYPE = R >> Conf/BiosId.env
+ echo BUILD_TYPE = R >> $WORKSPACE/Conf/BiosId.env
else
TARGET=DEBUG
BUILD_TYPE=D
- echo BUILD_TYPE = D >> Conf/BiosId.env
+ echo BUILD_TYPE = D >> $WORKSPACE/Conf/BiosId.env
fi
@@ -221,14 +211,14 @@ fi
## Additional EDK Build Setup/Configuration
##**********************************************************************
echo "Ensuring correct build directory is present for GenBiosId..."
-ACTIVE_PLATFORM=$PLATFORM_PACKAGE/PlatformPkg.dsc
+ACTIVE_PLATFORM=$PLATFORM_PACKAGE/PlatformPkgX64.dsc
#TOOL_CHAIN_TAG=GCC47
MAX_CONCURRENT_THREAD_NUMBER=1
-sed -i '/^ACTIVE_PLATFORM/d' Conf/target.txt
-sed -i '/^TARGET /d' Conf/target.txt
-sed -i '/^TARGET_ARCH/d' Conf/target.txt
-sed -i '/^TOOL_CHAIN_TAG/d' Conf/target.txt
-sed -i '/^MAX_CONCURRENT_THREAD_NUMBER/d' Conf/target.txt
+sed -i '/^ACTIVE_PLATFORM/d' $WORKSPACE/Conf/target.txt
+sed -i '/^TARGET /d' $WORKSPACE/Conf/target.txt
+sed -i '/^TARGET_ARCH/d' $WORKSPACE/Conf/target.txt
+sed -i '/^TOOL_CHAIN_TAG/d' $WORKSPACE/Conf/target.txt
+sed -i '/^MAX_CONCURRENT_THREAD_NUMBER/d' $WORKSPACE/Conf/target.txt
echo ACTIVE_PLATFORM = $ACTIVE_PLATFORM >> Conf/target.txt
echo TARGET = $TARGET >> Conf/target.txt
echo TOOL_CHAIN_TAG = $TOOL_CHAIN_TAG >> Conf/target.txt
@@ -242,10 +232,9 @@ fi
###
### Update ASL path for GCC47 & 46
###
- echo "*_GCC46_*_ASL_PATH = \"wine $WORKSPACE/PlatformTools/ASL/iasl.exe\"" >> Conf/tools_def.txt
- echo "*_GCC47_*_ASL_PATH = \"wine $WORKSPACE/PlatformTools/ASL/iasl.exe\"" >> Conf/tools_def.txt
+
## Fix error due to '\' in OBJCOPY_ADDDEBUGFLAG GCC Common rule
- echo DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=\$\(DEBUG_DIR\)/\$\(MODULE_NAME\).debug >> Conf/tools_def.txt
+ echo DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=\$\(DEBUG_DIR\)/\$\(MODULE_NAME\).debug >> $WORKSPACE/Conf/tools_def.txt
###
##**********************************************************************
@@ -259,11 +248,9 @@ fi
if [ -e "$BUILD_PATH/$Arch/BiosId.bin" ]; then
rm -f $BUILD_PATH/$Arch/BiosId.bin
fi
-wine PlatformTools/GenBiosId/GenBiosId.exe -i Conf/BiosId.env -o $BUILD_PATH/$Arch/BiosId.bin
+./Platform/BroxtonPlatformPkg/Common/Tools/GenBiosId/GenBiosId -i Conf/BiosId.env -o $BUILD_PATH/$Arch/BiosId.bin
+
-echo "Running UniTool..."
-## Scan the main CRB tree, excluding R8VlvDeviceSvRestrictedPkg folders
-wine PlatformTools/UniTool/UniTool.exe -b -u -x Platform/BxtPlatformPkg PlatformSetupDxe/UqiList.uni 1>>Unitool.log 2>&1
echo
echo "**** Replace DebugLib.h to save space.... ****"
@@ -272,17 +259,16 @@ cp PlatformTools/GCC/DebugLib.h Core/MdePkg/Include/Library/
echo
echo "**** Copy ResetVector to original folder ****"
echo "**** Due to nasm can't execute in Ubuntu ****"
-cp PlatformTools/GCC/Vtf0/ResetVector.ia32.port80.raw $PLATFORM_PACKAGE/Override/UefiCpuPkg/ResetVector/Vtf0/Bin
-cp PlatformTools/GCC/Vtf1/ResetVector.ia32.port80.raw $PLATFORM_PACKAGE/Override/UefiCpuPkg/ResetVector/Vtf1/Bin
+
echo "Invoking EDK2 build..."
-build $Build_Flags
+build $Build_Flags
##**********************************************************************
## Post Build processing and cleanup
##**********************************************************************
-grep "_PCD_VALUE_" $BUILD_PATH/IA32/$PLATFORM_PACKAGE/PlatformPei/PlatformPei/DEBUG/AutoGen.h > FlashMap.h
+grep "_PCD_VALUE_" $BUILD_PATH/IA32/BroxtonPlatformPkg/PlatformPei/PlatformPei/DEBUG/AutoGen.h > FlashMap.h
#echo "Running fce..."
## Extract Hii data from build and store in HiiDefaultData.txt
diff --git a/Platform/BroxtonPlatformPkg/BuildIFWI.sh b/Platform/BroxtonPlatformPkg/BuildIFWI.sh
index 98b5b7141a..df518287f2 100644
--- a/Platform/BroxtonPlatformPkg/BuildIFWI.sh
+++ b/Platform/BroxtonPlatformPkg/BuildIFWI.sh
@@ -1,3 +1,15 @@
+#
+# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php
+#
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+
+
##**********************************************************************
## Function define
##**********************************************************************
@@ -144,14 +156,11 @@ else
IFWI_Suffix="/S $3"
fi
-# Go to root directory of work space.
-cd ..
-cd ..
## Build BIOS
echo "======================================================================"
echo "Build_IFWI: Calling BIOS build Script..."
-./Platform/BroxtonPlatformPkg/BuildBios.sh $Build_Flags $Platform_Type $Build_Target
+sh Platform/BroxtonPlatformPkg/BuildBios.sh $Build_Flags $Platform_Type $Build_Target
echo
echo Finished Building BIOS.
diff --git a/Platform/BroxtonPlatformPkg/Common/Tools/GenBiosId/GenBiosId b/Platform/BroxtonPlatformPkg/Common/Tools/GenBiosId/GenBiosId
new file mode 100644
index 0000000000..ef1578f2bc
--- /dev/null
+++ b/Platform/BroxtonPlatformPkg/Common/Tools/GenBiosId/GenBiosId
Binary files differ
diff --git a/Platform/BroxtonPlatformPkg/PlatformDsc/BuildOptions.EDKII.Gcc.dsc b/Platform/BroxtonPlatformPkg/PlatformDsc/BuildOptions.EDKII.Gcc.dsc
new file mode 100644
index 0000000000..7c7f9c2b17
--- /dev/null
+++ b/Platform/BroxtonPlatformPkg/PlatformDsc/BuildOptions.EDKII.Gcc.dsc
@@ -0,0 +1,108 @@
+## @file
+# Define build options tokens.
+#
+# Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
+#
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php.
+#
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+##
+
+##
+## Many of these should be converted to FixedAtBuild (or at minimum FeatureFlag) PCDs !
+########################################################################################
+
+#
+# Define Platform specific pre-processor tokens
+#
+!if $(APLK_SETUP_ENABLE_BUILD) == TRUE
+ DEFINE APLK_SETUP_ENABLE = -DAPLK_SETUP_ENABLE=1
+!else
+ DEFINE APLK_SETUP_ENABLE = -DAPLK_SETUP_ENABLE=0
+!endif
+
+!if $(ENBDT_PF_BUILD) == TRUE
+ DEFINE ENBDT_PF_ENABLE = -DENBDT_PF_ENABLE=1
+!else
+ DEFINE ENBDT_PF_ENABLE = -DENBDT_PF_ENABLE=0
+!endif
+
+#
+# Define common pre-processor tokens.
+#
+!if $(PERFORMANCE_ENABLE) == TRUE
+ DEFINE PERFORMANCE_ENABLE_BUILD_OPTION = -D_PERFORMANCE_ENABLE_=1
+!endif
+
+!if $(X64_CONFIG) == TRUE
+ DEFINE X64_BUILD_ENABLE = -DX64_BUILD_ENABLE=1
+!endif
+
+!if $(PCIESC_ENABLE) == TRUE
+ DEFINE PCIESC_SUPPORT_BUILD_OPTION = -DPCIESC_SUPPORT=1
+!endif
+
+!if $(SATA_ENABLE) == TRUE
+ DEFINE SATA_SUPPORT_BUILD_OPTION = -DSATA_SUPPORT=1
+!endif
+
+!if $(PRAM_ENABLE) == TRUE
+ DEFINE PRAM_SUPPORT_BUILD_OPTION = -DPRAM_SUPPORT=1
+!endif
+
+ DEFINE BDAT_SUPPORT_BUILD_OPTION = -DBDAT_SUPPORT=0
+
+!if $(NVM_VARIABLE_ENABLE) == TRUE
+ DEFINE NVM_VARIABLE_BUILD_OPTION = -DNVM_VARIABLE_ENABLE=1
+!endif
+
+!if $(FTPM_ENABLE) == TRUE
+ DEFINE FTPM_SUPPORT_BUILD_OPTIONS = -DFTPM_SUPPORT=1
+!endif
+
+!if $(SMM_VARIABLE_ENABLE) == TRUE
+ DEFINE SMM_VARIABLE_ENABLE_BUILD_OPTIONS = -DSMM_VARIABLE_ENABLE=1
+!else
+ DEFINE SMM_VARIABLE_ENABLE_BUILD_OPTIONS =
+!endif
+
+ DEFINE MEMORY_BUILD_OPTIONS = -DEFI_MEMORY_INIT=1
+
+DEFINE EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS = $(PERFORMANCE_ENABLE_BUILD_OPTION) $(ENBDT_PF_ENABLE) $(X64_BUILD_ENABLE) $(NVM_VARIABLE_BUILD_OPTION) $(FTPM_SUPPORT_BUILD_OPTIONS) $(PCIESC_SUPPORT_BUILD_OPTION) $(SATA_SUPPORT_BUILD_OPTION) $(PRAM_SUPPORT_BUILD_OPTION) $(HDAUDIO_SUPPORT_BUILD_OPTION) $(APLK_SETUP_ENABLE) $(MEMORY_BUILD_OPTIONS) $(BDAT_SUPPORT_BUILD_OPTION) $(SMM_VARIABLE_ENABLE_BUILD_OPTIONS)
+
+!if gPlatformModuleTokenSpaceGuid.PcdDeprecatedFunctionRemove == TRUE
+ DEFINE DISABLE_NEW_DEPRECATED_INTERFACES_BUILD_OPTION = -DDISABLE_NEW_DEPRECATED_INTERFACES=1
+!else
+ DEFINE DISABLE_NEW_DEPRECATED_INTERFACES_BUILD_OPTION =
+!endif
+
+DEFINE EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS) $(DISABLE_NEW_DEPRECATED_INTERFACES_BUILD_OPTION)
+
+#
+# Compiler flags
+#
+#format: <BuildType>_<CompilerVer>_<TargetArch>_<FlagType>
+
+ *_*_IA32_ASM_FLAGS = $(VP_BUILD_OPTIONS) -DEDKII_GLUE_PciExpressBaseAddress=$(PLATFORM_PCIEXPRESS_BASE)h
+
+
+ *_*_IA32_CC_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS) -Wno-unused-function -Wno-unused-but-set-variable -Wno-switch
+ *_*_IA32_VFRPP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_IA32_APP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_IA32_PP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_IA32_ASLPP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+
+ *_*_X64_CC_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS) -Wno-unused-function -Wno-unused-but-set-variable -Wno-switch -Wno-unused-variable -Wno-missing-braces
+ *_*_X64_VFRPP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_X64_APP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_X64_PP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_X64_ASLPP_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS)
+ *_*_*_ASL_FLAGS = $(EDK_EDKII_DSC_FEATURE_BUILD_OPTIONS) -we
+
+ RELEASE_*_*_CC_FLAGS = /Zi
+
diff --git a/Platform/BroxtonPlatformPkg/PlatformPkgX64Gcc.dsc b/Platform/BroxtonPlatformPkg/PlatformPkgX64Gcc.dsc
new file mode 100644
index 0000000000..1339b44b28
--- /dev/null
+++ b/Platform/BroxtonPlatformPkg/PlatformPkgX64Gcc.dsc
@@ -0,0 +1,181 @@
+## @file
+# Platform description.
+#
+# Copyright (c) 2012 - 2016, Intel Corporation. All rights reserved.<BR>
+#
+# This program and the accompanying materials
+# are licensed and made available under the terms and conditions of the BSD License
+# which accompanies this distribution. The full text of the license may be found at
+# http://opensource.org/licenses/bsd-license.php.
+#
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+#
+##
+
+################################################################################
+#
+# Defines Section - statements that will be processed to create a Makefile.
+#
+################################################################################
+[Defines]
+ PLATFORM_NAME = BroxtonPlatformPkg
+ PLATFORM_GUID = 1D3686CF-D2CE-4B6E-9F59-28F61976CB73
+ PLATFORM_VERSION = 0.1
+ DSC_SPECIFICATION = 0x00010005
+
+ OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)
+ SUPPORTED_ARCHITECTURES = IA32|X64
+ BUILD_TARGETS = DEBUG|RELEASE
+ SKUID_IDENTIFIER = DEFAULT
+
+ #
+ # Set platform specific package/folder names, same as passed from PREBUILD script.
+ # PLATFORM_PACKAGE would be the same as PLATFORM_NAME as well as package build folder
+ # The CORE_PACKAGES value could be set to '.' if Core packages get moved to Workspace root
+ #
+ DEFINE SILICON_NAME = BroxtonSoC
+ DEFINE PLATFORM_PACKAGE_COMMON = $(PLATFORM_NAME)/Common
+ DEFINE PLATFORM_SI_PACKAGE = $(SILICON_NAME)/BroxtonSiPkg
+
+ !include DefineAtBuildMacros.dsc
+ !include PlatformDsc/Defines.dsc
+
+################################################################################
+#
+# SKU Identification section - list of all SKU IDs supported by this Platform.
+#
+################################################################################
+[SkuIds]
+ 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
+
+################################################################################
+#
+# Library Class section - list of all Library Classes needed by this Platform.
+#
+################################################################################
+[LibraryClasses.Common]
+ #
+ # RC Package
+ #
+ !include $(WORKSPACE)/Silicon/$(PLATFORM_SI_PACKAGE)/SiPkgCommonLib.dsc
+ #
+ # Platform
+ #
+ !include PlatformDsc/LibraryClasses.dsc
+
+[LibraryClasses.IA32.SEC]
+ !if $(PERFORMANCE_ENABLE) == TRUE
+ PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
+ !endif
+
+!if $(SOURCE_DEBUG_ENABLE) == TRUE
+[LibraryClasses.common.SEC]
+ DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
+
+[LibraryClasses.common.DXE_CORE]
+ DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
+!endif
+
+[LibraryClasses.IA32.PEIM, LibraryClasses.IA32.PEI_CORE, LibraryClasses.IA32.SEC]
+!if $(PERFORMANCE_ENABLE) == TRUE
+ !if $(INTEL_FPDT_ENABLE) == TRUE
+ PerformanceLib|$(PLATFORM_PACKAGE_COMMON)/Library/PeiFpdtPerformanceLib/PeiFpdtPerformanceLib.inf
+ !else
+ PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
+ !endif
+!endif
+ #
+ # RC Package
+ #
+ !include $(WORKSPACE)/Silicon/$(PLATFORM_SI_PACKAGE)/SiPkgPeiLib.dsc
+
+ !include PlatformDsc/LibraryClasses.IA32.PEI.dsc
+
+[LibraryClasses.IA32.PEIM, LibraryClasses.IA32.PEI_CORE]
+!if $(PERFORMANCE_ENABLE) == TRUE
+ !if $(INTEL_FPDT_ENABLE) == TRUE
+ PerformanceLib|$(PLATFORM_PACKAGE_COMMON)/Library/PeiFpdtPerformanceLib/PeiFpdtPerformanceLib.inf
+ !else
+ PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
+ !endif
+ TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/DxeTscTimerLib.inf
+!endif
+
+[LibraryClasses.IA32.DXE_DRIVER]
+ !if $(PERFORMANCE_ENABLE) == TRUE
+ PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
+ TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/DxeTscTimerLib.inf
+ !endif
+
+[LibraryClasses.Common.DXE_DRIVER, LibraryClasses.Common.DXE_CORE, LibraryClasses.Common.DXE_SMM_DRIVER, LibraryClasses.Common.SMM_CORE, LibraryClasses.Common.DXE_RUNTIME_DRIVER]
+ #
+ # RC Package
+ #
+ !include $(WORKSPACE)/Silicon/$(PLATFORM_SI_PACKAGE)/SiPkgDxeLib.dsc
+
+[LibraryClasses.Common.DXE_DRIVER]
+ !if $(PERFORMANCE_ENABLE) == TRUE
+ PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
+ TimerLib|$(PLATFORM_PACKAGE_COMMON)/Library/PlatformTscTimerLib/DxeTscTimerLib.inf
+ !endif
+
+[LibraryClasses.Common.DXE_CORE]
+ !include PlatformDsc/LibraryClasses.DxeCore.dsc
+
+[LibraryClasses.Common.DXE_SMM_DRIVER]
+ !include PlatformDsc/LibraryClasses.DxeSmmDriver.dsc
+
+[LibraryClasses.Common.SMM_CORE]
+ !include PlatformDsc/LibraryClasses.SmmCore.dsc
+
+[LibraryClasses.Common.DXE_RUNTIME_DRIVER]
+ !include PlatformDsc/LibraryClasses.DxeRuntimeDriver.dsc
+
+[LibraryClasses.Common.UEFI_APPLICATION]
+ PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
+
+################################################################################
+#
+# Pcd Section - list of all EDK II PCD Entries defined by this Platform
+#
+################################################################################
+[PcdsFeatureFlag.Common]
+ !include PlatformDsc/PcdsFeatureFlag.dsc
+
+[PcdsFixedAtBuild.Common]
+ gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported|0x9
+ !include PlatformDsc/PcdsFixedAtBuild.dsc
+
+[PcdsPatchableInModule.Common]
+ gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x807B05FF
+ gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x$(PLATFORM_PCIEXPRESS_BASE)
+ gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLegacyBiosCacheLegacyRegion|FALSE
+ ## Default Creator ID for ACPI table creation, override to "BRXT"
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId|0x54585242
+
+[PcdsDynamicHii.Common.DEFAULT]
+ !include PlatformDsc/PcdsDynamicHii.Default.dsc
+
+[PcdsDynamicDefault.Common.DEFAULT]
+ !include PlatformDsc/PcdsDynamicDefault.Default.dsc
+
+[Components.IA32]
+ !include $(WORKSPACE)/Silicon/$(PLATFORM_SI_PACKAGE)/SiPkgPei.dsc
+ !include PlatformDsc/Components.IA32.dsc
+
+[Components.X64]
+ !include $(WORKSPACE)/Silicon/$(PLATFORM_SI_PACKAGE)/SiPkgDxe.dsc
+ !include PlatformDsc/Components.dsc
+ $(PLATFORM_SI_PACKAGE)/SouthCluster/ScInit/Dxe/ScInitDxe.inf
+
+################################################################################
+#
+# Build Options section - list of all Build Flags used by this Platform.
+#
+################################################################################
+#[BuildOptions.Common]
+
+[BuildOptions.Common.EDKII]
+ !include PlatformDsc/BuildOptions.EDKII.dsc
+