]> git.proxmox.com Git - mirror_edk2.git/blobdiff - QuarkPlatformPkg/Readme.md
MdeModulePkg/XhciPei: Support IoMmu.
[mirror_edk2.git] / QuarkPlatformPkg / Readme.md
index 8f5b898b6a112045351fbafdfb50a85a69b98939..aa9d9856bd160cd38510c8e491d33db46c369313 100644 (file)
   - Install\r
 * ASL compiler: Available from http://www.acpica.org\r
   - Install into ```C:\ASL``` to match default tools_def.txt configuration.\r
+* Python 2.7: Available from http://www.python.org\r
 \r
 Create a new directory for an EDK II WORKSPACE.\r
 \r
 The code block below shows the GIT clone operations required to pull the EDK II\r
-source tree, the FatPkg sources, the pre-built versions of BaseTools as WIN32\r
-binaries, and the edk2-non-osi repository that provides a binary file for the\r
+source tree and the edk2-non-osi repository that provides a binary file for the\r
 Quark Remote Management Unit (RMU).\r
 \r
 Next it sets environment variables that must be set before running\r
@@ -60,6 +60,8 @@ the EDK II [Multiple Workspace](
 https://github.com/tianocore/tianocore.github.io/wiki/Multiple_Workspace)\r
 feature is used.\r
 \r
+Next, the EDK II BaseTools required to build firmware images are built.\r
+\r
 Next, the ```edksetup.bat``` file is run to complete the initialization of an\r
 EDK II build environment.  Two example build commands are shown.  The first one\r
 in ```QuarkPlatformPlg/Quark.dsc``` builds a full UEFI firmware image that is\r
@@ -69,16 +71,17 @@ image that is useful for initial power-on and debug of new features.
 \r
 ```cmd\r
 git clone https://github.com/tianocore/edk2.git\r
-git clone https://github.com/tianocore/edk2-FatPkg.git FatPkg\r
-git clone https://github.com/tianocore/edk2-BaseTools-win32.git\r
 git clone https://github.com/tianocore/edk2-non-osi.git\r
 \r
+set PYTHON_HOME=c:\Python27\r
 set WORKSPACE=%CD%\r
-set PACKAGES_PATH=%WORKSPACE%\edk2;%WORKSPACE%\edk2-non-osi\r
-set EDK_TOOLS_BIN=%WORKSPACE%\edk2-BaseTools-win32\r
+set PACKAGES_PATH=%WORKSPACE%\edk2;%WORKSPACE%\edk2-non-osi\Silicon\Intel\r
+set EDK_TOOLS_PATH=%WORKSPACE%\edk2\BaseTools\r
+cd %WORKSPACE%\edk2\r
 \r
-cd edk2\r
-edksetup.bat\r
+BaseTools\toolsetup.bat Rebuild\r
+\r
+edksetup.bat Rebuild\r
 \r
 build -a IA32 -t VS2015x86 -p QuarkPlatformPkg/Quark.dsc\r
 build -a IA32 -t VS2015x86 -p QuarkPlatformPkg/QuarkMin.dsc\r
@@ -91,12 +94,13 @@ build -a IA32 -t VS2015x86 -p QuarkPlatformPkg/QuarkMin.dsc
 * GIT client\r
 * GCC 4.9 compiler\r
 * ASL compiler: Available from http://www.acpica.org.\r
+* Python 2.7\r
 \r
 Create a new directory for an EDK II WORKSPACE.\r
 \r
 The code block below shows the GIT clone operations required to pull the EDK II\r
-source tree, the FatPkg sources, and the edk2-non-osi repository that provides a\r
-binary file for the Quark Remote Management Unit (RMU).\r
+source tree and the edk2-non-osi repository that provides a binary file for the\r
+Quark Remote Management Unit (RMU).\r
 \r
 Next it sets environment variables that must be set before running\r
 ```edksetup.bat```. Since content is being pulled from multiple repositories,\r
@@ -106,7 +110,7 @@ feature is used.
 \r
 Next, the EDK II BaseTools required to build firmware images are built.\r
 \r
-Next, the ```edksetup.bat``` file is run to complete the initialization of an\r
+Next, the ```edksetup.sh``` file is run to complete the initialization of an\r
 EDK II build environment.  Two example build commands are shown.  The first one\r
 in ```QuarkPlatformPlg/Quark.dsc``` builds a full UEFI firmware image that is\r
 able to boot the built-in UEFI Shell and Linux from a micro SD FLASH card.  The\r
@@ -115,17 +119,15 @@ image that is useful for initial power-on and debug of new features.
 \r
 ```sh\r
 git clone https://github.com/tianocore/edk2.git\r
-git clone https://github.com/tianocore/edk2-FatPkg.git FatPkg\r
 git clone https://github.com/tianocore/edk2-non-osi.git\r
 \r
 export WORKSPACE=$PWD\r
-export PACKAGES_PATH=$WORKSPACE/edk2:$WORKSPACE/edk2-non-osi\r
+export PACKAGES_PATH=$WORKSPACE/edk2:$WORKSPACE/edk2-non-osi/Silicon/Intel\r
 export EDK_TOOLS_PATH=$WORKSPACE/edk2/BaseTools\r
-\r
-make -C edk2/BaseTools\r
-\r
 cd $WORKSPACE/edk2\r
 \r
+make -C BaseTools\r
+\r
 . edksetup.sh BaseTools\r
 \r
 build -a IA32 -t GCC49 -p QuarkPlatformPkg/Quark.dsc\r
@@ -146,6 +148,8 @@ features on the build command line using ```-D``` flags.
 | ```SECURE_BOOT_ENABLE```   |             FALSE | TRUE, FALSE          |\r
 | ```MEASURED_BOOT_ENABLE``` |             FALSE | TRUE, FALSE          |\r
 | ```TPM_12_HARDWARE```      |              NONE | NONE, LPC, ATMEL_I2C, INFINEON_I2C |\r
+| ```CAPSULE_ENABLE```       |             FALSE | TRUE, FALSE          |\r
+| ```RECOVERY_ENABLE```      |             FALSE | TRUE, FALSE          |\r
 \r
 * ```GALILEO``` - Used to specify the type of Intel(R) Galileo board type.  The\r
   default is ```GEN2``` for the [Intel(R) Galileo Gen 2 Development Board](\r
@@ -199,6 +203,22 @@ features on the build command line using ```-D``` flags.
   has been tested with the [CryptoShield](https://www.sparkfun.com/products/13183)\r
   available from [SparkFun](https://www.sparkfun.com/).\r
 \r
+* ```CAPSULE_ENABLE``` - Used to enable/disable capsule update features.\r
+  The default is FALSE for disabled.  Add ```-D CAPSULE_ENABLE``` to the\r
+  build command line to enable capsule update features.\r
+  The build process generate capsule update image - QUARKFIRMWAREUPDATECAPSULEFMPPKCS7.Cap.\r
+  The user need copy QUARKFIRMWAREUPDATECAPSULEFMPPKCS7.Cap and CapsuleApp.efi\r
+  to a storage media attached to the Quark Board.\r
+  Then the user can boot to shell and run ```CapsuleApp QUARKFIRMWAREUPDATECAPSULEFMPPKCS7.Cap```.\r
+  In next reboot, the system firmware is updated.\r
+\r
+* ```RECOVERY_ENABLE``` - Used to enable/disable recovery features.\r
+  The default is FALSE for disabled.  Add ```-D RECOVERY_ENABLE``` to the\r
+  build command line to enable recovery features.\r
+  The build process generates the recovery capsule image - QUARKREC.Cap.\r
+  Then the user need copy QUARKREC.Cap to a USB KEY, plug the USB KEY to the Quark Board.\r
+  In next boot, if a user runs ForceRecovery.efi in shell, or if a user presses the RESET button during power on, warm reset or REBOOT,\r
+  or if the FvMain is corrupted in flash, the system will boot into recovery mode.\r
 \r
 ### **Example Build Commands**\r
 \r