2016-01-07 20:24:24 +01:00
<!DOCTYPE html>
< html >
< head >
< title > Quark™ SoC< / title >
< / head >
< body >
< h1 > Intel® Quark™ SoC< / h1 >
< table >
< tr >
< td > < a target = "_blank" href = "http://www.intel.com/content/dam/www/public/us/en/images/embedded/16x9/edc-quark-block-diagram-16x9.png" > < img alt = "Quark Block Diagram" src = "http://www.intel.com/content/dam/www/public/us/en/images/embedded/16x9/edc-quark-block-diagram-16x9.png" width = 500 > < / a > < / td >
< td >
2016-02-02 16:55:38 +01:00
The Quark™ SoC code was developed using the
< a target = "_blank" href = "../Board/galileo.html" > Galileo Gen 2< / a >
board:
< ul >
2016-02-03 16:28:22 +01:00
< li > < a target = "_blank" href = "../development.html" > Overall< / a > development< / li >
2016-02-02 16:55:38 +01:00
< li > < a target = "_blank" href = "soc.html" > SoC< / a > support< / li >
< li > < a target = "_blank" href = "../fsp1_1.html" > FSP 1.1< / a > integration< / li >
< li > < a target = "_blank" href = "../Board/board.html" > Board< / a > support< / li >
2016-05-18 02:03:00 +02:00
< li > < a target = "_blank" href = "#QuarkFsp" > Quark™ FSP< / a > < / li >
< li > < a target = "_blank" href = "#CorebootPayloadPkg" > CorebootPayloadPkg< / a > < / li >
2016-02-02 16:55:38 +01:00
< / ul >
2016-01-07 20:24:24 +01:00
< / td >
< / tr >
< / table >
< hr >
< h1 > Quark™ Documentation< / h1 >
< ul >
< li > < a target = "_blank" href = "http://www.intel.com/content/dam/www/public/us/en/images/embedded/16x9/edc-quark-block-diagram-16x9.png" > Block Diagram< / a > < / li >
< li > < a target = "_blank" href = "http://www.intel.com/content/www/us/en/embedded/products/quark/specifications.html" > Specifications< / a > :
< ul >
< li > < a target = "_blank" href = "http://ark.intel.com/products/79084/Intel-Quark-SoC-X1000-16K-Cache-400-MHz" > X1000< / a >
- < a target = "_blank" href = "http://www.intel.com/content/www/us/en/search.html?keyword=X1000" > Documentation< / a > :
< ul >
< li > < a target = "_blank" href = "http://www.intel.com/content/dam/www/public/us/en/documents/datasheets/quark-x1000-datasheet.pdf" > Datasheet< / a > < / li >
< li > < a target = "_blank" href = "http://www.intel.com/content/dam/support/us/en/documents/processors/quark/sb/intelquarkcore_devman_001.pdf" > Developer's Manual< / a > < / li >
< li > < a target = "_blank" href = "http://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/intel-quark-product-brief-v3.pdf" > Product Brief< / a > < / li >
< / ul >
< / li >
< / ul >
< / li >
2016-05-18 02:03:00 +02:00
< li > < a target = "_blank" href = "../index.html#Documentation" > More documentation< / a > < / li >
2016-01-07 20:24:24 +01:00
< / ul >
< hr >
2016-02-28 15:22:47 +01:00
< h1 > < a name = "CorebootPayloadPkg" > Quark™ EDK2 CorebootPayloadPkg< / a > < / h1 >
2016-02-10 20:12:50 +01:00
< p >
Build Instructions:
< / p >
< ol >
< li > Set up < a href = "#BuildEnvironment" > build environment< / a > < / li >
2016-05-18 02:03:00 +02:00
< li > Linux (assumes GCC48):
< pre > < code > build -p CorebootPayloadPkg/CorebootPayloadPkgIa32.dsc -a IA32 \
-t GCC48 -b DEBUG -DDEBUG_PROPERTY_MASK=0x27 \
-DDEBUG_PRINT_ERROR_LEVEL=0x80000042 -DSHELL_TYPE=BUILD_SHELL \
-DMAX_LOGICAL_PROCESSORS=1
2016-02-21 02:44:35 +01:00
ls Build/CorebootPayloadPkgIA32/DEBUG_GCC48/FV/UEFIPAYLOAD.fd
2016-02-10 20:12:50 +01:00
< / code > < / pre >
2016-05-18 02:03:00 +02:00
< / li >
< li > Windows (assumes Visual Studio 2015):
< pre > < code > build -p CorebootPayloadPkg\CorebootPayloadPkgIa32.dsc -a IA32 -t VS2015x86 -b DEBUG -DDEBUG_PROPERTY_MASK=0x27 -DDEBUG_PRINT_ERROR_LEVEL=0x80000042 -DSHELL_TYPE=BUILD_SHELL -DMAX_LOGICAL_PROCESSORS=1
dir Build\CorebootPayloadPkgIA32\DEBUG_VS2015x86\FV\UEFIPAYLOAD.fd
2016-02-10 20:12:50 +01:00
< / code > < / pre >
< / li >
2016-02-21 02:44:35 +01:00
< li > In the .config for coreboot, set the following Kconfig values:
2016-01-07 20:24:24 +01:00
< ul >
2016-02-10 20:12:50 +01:00
< li > CONFIG_PAYLOAD_ELF=y< / li >
< li > CONFIG_PAYLOAD_FILE="path to UEFIPAYLOAD.fd"< / li >
< / ul >
< / li >
< li > Build coreboot< / li >
< li > Copy the image build/coreboot.rom into flash< / li >
< / ol >
< hr >
< h1 > < a name = "BuildEnvironment" > Quark™ EDK2 Build Environment< / a > < / h1 >
< p >
Use the following steps to setup a build environment:
< / p >
< ol >
< li > Get the EDK2 sources:
< ol type = "A" >
2016-01-07 20:24:24 +01:00
< li > EDK2: git clone < a target = "_blank" href = "https://github.com/tianocore/edk2.git" > https://github.com/tianocore/edk2.git< / a > < / li >
< li > EDK2-non-osi: git clone < a target = "_blank" href = "https://github.com/tianocore/edk2-non-osi.git" > https://github.com/tianocore/edk2-non-osi.git< / a > < / li >
< li > Win32 BaseTools: git clone < a target = "_blank" href = "https://github.com/tianocore/edk2-BaseTools-win32.git" > https://github.com/tianocore/edk2-BaseTools-win32.git< / a > < / li >
2016-02-10 20:12:50 +01:00
< / ol >
2016-01-07 20:24:24 +01:00
< / li >
2016-02-10 20:12:50 +01:00
< li > Set up a build window:
< ul >
< li > Linux:
2016-02-08 22:57:47 +01:00
< pre > < code > export WORKSPACE=$PWD
2016-05-18 02:03:00 +02:00
export PACKAGES_PATH="$PWD/edk2:$PWD/edk2-non-osi"
2016-02-08 22:57:47 +01:00
cd edk2
export WORKSPACE=$PWD
. edksetup.sh
< / code > < / pre >
2016-02-10 20:12:50 +01:00
< / li >
< li > Windows:
2016-01-07 20:24:24 +01:00
< pre > < code > set WORKSPACE=%CD%
2016-05-18 02:03:00 +02:00
set PACKAGES_PATH=%WORKSPACE%\edk2;%WORKSPACE%\edk2-non-osi
2016-01-07 20:24:24 +01:00
set EDK_TOOLS_BIN=%WORKSPACE%\edk2-BaseTools-win32
cd edk2
edksetup.bat
< / code > < / pre >
2016-02-10 20:12:50 +01:00
< / li >
< / ul >
< / li >
< / ol >
< hr >
2016-05-18 02:03:00 +02:00
< h1 > < a name = "QuarkFsp" > Quark™ FSP< / a > < / h1 >
2016-02-10 20:12:50 +01:00
< p >
2016-05-18 02:03:00 +02:00
Getting the Quark FSP source:
< / p >
< ol >
< li > Set up an EDK-II < a href = "#BuildEnvironment" > Build Environment< / a > < / li >
< li > cd edk2< / li >
< li > mkdir QuarkFspPkg< / li >
< li > cd QuarkFspPkg< / li >
< li > Use git to clone < a target = "_blank" href = "https://review.gerrithub.io/#/admin/projects/LeeLeahy/quarkfsp" > QuarkFspPkg< / a > into the QuarkFpsPkg directory (.)< / li >
< / ol >
< p >
Building QuarkFspPkg:
2016-02-10 20:12:50 +01:00
< / p >
< ul >
2016-05-18 02:03:00 +02:00
< li > Linux: QuarkFspPkg/BuildFsp.sh -d32< / li >
< li > Windows: QuarkFspPkg/BuildFsp.bat -d32< / li >
2016-02-10 20:12:50 +01:00
< / ul >
< hr >
< h1 > Quark™ EDK2 BIOS< / h1 >
< p >
Build Instructions:
< / p >
< ol >
< li > Set up < a href = "#BuildEnvironment" > build environment< / a > < / li >
< li > Build the image:
< ul >
< li > Linux:
< pre > < code > build -p QuarkPlatformPkg/Quark.dsc -a IA32 -t GCC48 -b DEBUG -DDEBUG_PROPERTY_MASK=0x27 -DDEBUG_PRINT_ERROR_LEVEL=0x80000042
ls Build/Quark/DEBUG_GCC48/FV/Quark.fd
< / code > < / pre >
< / li >
< li > Windows:
< pre > < code > build -p QuarkPlatformPkg/Quark.dsc -a IA32 -t VS2012x86 -b DEBUG -DDEBUG_PROPERTY_MASK=0x27 -DDEBUG_PRINT_ERROR_LEVEL=0x80000042
dir Build\Quark\DEBUG_VS2012x86\FV\Quark.fd
< / code > < / pre >
< / li >
< / ul >
2016-01-07 20:24:24 +01:00
< / li >
2016-02-10 20:12:50 +01:00
< / ol >
< p >
Documentation:
< / p >
< ul >
2016-03-04 01:08:29 +01:00
< li > < a target = "_blank" href = "https://github.com/tianocore/edk2/tree/master/QuarkPlatformPkg" > EDK II firmware for Intel® Quark™ SoC X1000 based platforms< / a > < / li >
2016-02-10 20:12:50 +01:00
< li > Intel® Quark™ SoC X1000 < a target = "_blank" href = "http://www.intel.com/content/dam/www/public/us/en/documents/guides/quark-x1000-uefi-firmware-writers-guide.pdf" > UEFI Firmware Writer's Guide< / a > < / li >
2016-01-07 20:24:24 +01:00
< / ul >
< hr >
2016-05-18 02:03:00 +02:00
< p > Modified: 17 May 2016< / p >
2016-01-07 20:24:24 +01:00
< / body >
2016-05-18 02:03:00 +02:00
< / html >