From 8af4cb8bbceaeb08837d8f653df5a7dd66ec417f Mon Sep 17 00:00:00 2001 From: Guo Mang Date: Mon, 5 Mar 2018 10:13:22 +0800 Subject: Update ReadMe.MD Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Guo Mang --- ReadMe.MD | 178 ++++++++------------------------------------------------------ 1 file changed, 21 insertions(+), 157 deletions(-) diff --git a/ReadMe.MD b/ReadMe.MD index a42260e7d3..3c35cbdcf2 100644 --- a/ReadMe.MD +++ b/ReadMe.MD @@ -1,172 +1,37 @@ - -This code base is designed for the MinnowBoard v3 platform using the Intel(R) Atom(tm) Processor E3900 Series. -This code base is based on UDK2017 core packages. +# MinnowBoard 3 and Leaf Hill CRB Platform -# INDEX +This codebase is designed for the MinnowBoard 3 platform and Leaf Hill Customer Reference Board (CRB), using the [Intel Atom(R) Processor E3900 Series](https://www.intel.com/content/www/us/en/embedded/products/apollo-lake/overview.html) (formerly Apollo Lake). -1. HOW TO CREATE A FULL SOURCE TREE -2. HOW TO BUILD (WINDOWS ENVIRONMENT) -3. MAINTAINERS +## Codebase Overview -## 1. HOW TO CREATE A FULL SOURCE TREE +This codebase is based on UDK2017 core packages, [Intel(R) Firmware Support Package](https://github.com/IntelFsp/FSP.git) +(Intel(R) FSP), [UEFI UNDI driver](https://downloadcenter.intel.com/download/19186/Intel-Ethernet-Connections-Boot-Utility-Preboot-Images-and-EFI-Drivers) +for Intel Ethernet Controllers, and pre-compiled binary objects required for the final Integrated Firmware Image (IFWI). -1. Create a new folder (directory) on the root of your local development machine - for use as your work space (this example uses "C:\MyWorkspace"). +Additional information on this project is available at [firmware.intel.com](https://firmware.intel.com/projects/minnowboard3). - NOTE: Some code paths are very long, and placing the working directory too - deep below the ROOT directory may cause the path to be longer than the - operating system or file system's maximum path length. +## Build Instructions -2. Get MinnowBoard v3 branch from GitHub with the following command. - * `git clone -b devel-MinnowBoard3-UDK2017 https://github.com/tianocore/edk2-platforms.git` +Instructions for downloading a source tree and compiling firmware are available in the project release notes at [firmware.intel.com](https://firmware.intel.com/projects/minnowboard3): +* https://firmware.intel.com/sites/default/files/MinnowBoard3-Rel_0_69-ReleaseNotes.txt +* https://firmware.intel.com/sites/default/files/LeafHill-Rel_0_69-ReleaseNotes.txt - Once the download completes, all EDK II packages and files will be found - under the "C:\MyWorkspace\edk2-platforms" directory. +*Note that Release 0.69 added a separate [release notes file for the Leaf Hill CRB](https://firmware.intel.com/sites/default/files/LeafHill-Rel_0_69-ReleaseNotes.txt). Instructions for downloading the Leaf Hill CRB source tree and compiling an IFWI image differ slightly from MinnowBoard 3.* -3. Get the BaseTools binary and copy them to BaseTools binary folder. - 1. `git clone https://github.com/tianocore/edk2-BaseTools-win32.git Win32` - 2. Enter folder Win32 - 3. `git checkout 0e088c19ab31fccd1d2f55d9e4fe0314b57c0097` - 4. Copy Win32 to the BaseTools Binary folder. - (C:\MyWorkspace\edk2-platforms\BaseTools\Bin\) +This project's build instructions have been validated in the following environments: +* Microsoft Windows 7 Ultimate 64-bit & Microsoft Windows 10 Enterprise 64-bit with Microsoft Visual Studio 2013/2015 +* Ubuntu Linux 16.04.3.LTS with GCC 5 -4. Get the Intel(R) Firmware Support Package(Intel FSP). - 1. Run `git clone -b ApolloLake https://github.com/IntelFsp/FSP.git` to download FSP - 2. Enter folder FSP - 3. Run `git checkout de67689ef6261c1a0ecee01b7312bd635e3435e7` - 4. Copy the ApolloLakeFspBinPkg to the folder - "C:\MyWorkspace\edk2-platforms\Silicon\BroxtonSoC\BroxtonFspPkg" +## Pre-Compiled Firmware Images -5. Install UEFI UNDI driver: - Download PREBOOT.EXE Version 21.1 from the "Intel® Ethernet Connections - Boot Utility, Preboot Images, and EFI Drivers" page. - https://downloadcenter.intel.com/download/19186/Intel-Ethernet-Connections-Boot-Utility-Preboot-Images-and-EFI-Drivers +Pre-compiled binary images are available at https://firmware.intel.com/projects/minnowboard3 - Windows user: - 1. Install PREBOOT.EXE into the default folder (C:\Intel21.1). - 2. Copy the UEFI x64 PCI-E gigabit driver (C:\Intel21.1\APPS\EFI\EFIx64\E7320X3.EFI) - to the platform package directory below, create the folder if it does not exist: - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Binaries\UNDI\I210PcieUndiDxe" +This [project](https://firmware.intel.com/projects/minnowboard3) also includes IA32 & x64 'flash update' tools for the UEFI Shell (FirmwareUpdateUtilities). +These utilities require the 'BIOS Lock' feature to be disabled. Please refer to the release notes for programming instructions. - Linux user: - 1. Use command "unzip PREBOOT.EXE" to extract UEFI x64 PCI-E gigabit driver - (preboot/APPS/EFI/EFIx64/E7320X3.EFI) - 2. Copy E7320X3.EFI to platform package directory below, create the folder - if it does not exist: - * "~/src/MyWorkspace/edk2-platforms/Platform/BroxtonPlatformPkg/Common/Binaries/UNDI/I210PcieUndiDxe" +## Reporting Issues -6. Follow the instructions found in the "Patch-HOWTO.txt" file located in the Workspace - (e.g. "C:\MyWorkspace\edk2-platforms\Core\CryptoPkg\Library\OpensslLib\Patch-HOWTO.txt") - to install the OpenSSL source code and enable the CryptoPkg module. - -7. Download MinnowBoard v3 Binary Object Modules - 1. Download the "MinnowBoard_v3-0.63-Binary.Objects.zip" from the project page: - * https://firmware.intel.com/projects/minnowboardv3 - 2. Unzip and copy the two folders (FAB_A, FAB_B) into - the directory below, and create the folder if it does not exist: - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Binaries\IFWI\MinnowBoard3" - -## 2. HOW TO BUILD (WINDOWS ENVIRONMENT) - -Windows System Configuration: - - Microsoft Windows 7 Ultimate 64-bit* - -1. Setup Build Environment - - 1. Install Visual Studio 2013/2015 on the build machine. - - 2. Install version Python 2.7.10 from: https://www.python.org/downloads/release/python-2710/ - * Make sure that a file with the extension of ".py" will be opened by Python.exe. - - 3. Install the NASM assembly language compiler: - - a. Download NASM 2.12.02 binaries: - * http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/win32/nasm-2.12.02-win32.zip - * http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/win64/nasm-2.12.02-win64.zip - - b. Unzip the 32-bit & 64-bit versions of nasm.exe to the directories listed below, - respectively, and create the folders if they do not exist: - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Tools\nasm\Win32" - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Tools\nasm\Win64" - - 4. Install the ACPI Source Language (ASL) compiler: - - a. Install the IASL 2016-09-30 compiler from acpica.org: - https://acpica.org/sites/acpica/files/iasl-win-20160930.zip - - b. Unzip the "iasl.exe" file into the directory below, and create the folder - if it does not exist: - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Tools\Iasl" - -2. Build - - 2a. Build Steps (32-bit) - - 1. To build a 32-bit release version - * Open a command prompt of Microsoft Visual Studio, such as "Developer Command Prompt for VS2013"; - * Type the command: `cd C:\MyWorkspace\edk2-platforms` - * Type the command: `BuildBIOS.bat /B /VS13 /IA32 Broxton Release` to build a release version. - (Please use "/VS15" flag for Visual Studio 2015 build; Replace "/B" with "/A" flag for MinnowBoard 3 FAB A board) - - 2. To build a 32-bit debug version - * Open a command prompt of Microsoft Visual Studio, such as "Developer Command Prompt for VS2013"; - * Type the command: `cd C:\MyWorkspace\edk2-platforms` - * Type the command: `BuildBIOS.bat /B /VS13 /IA32 Broxton Debug` to build a debug version. - (Please use "/VS15" flag for Visual Studio 2015 build; Replace "/B" with "/A" flag for MinnowBoard 3 FAB A board) - - 3. After the build successfully completes, the 8MB firmware binary image will be located in the - following location on your local hard drive: - - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Tools\Stitch" - - 2b. Build Steps (64-bit) - - 1. To build a 64-bit release version - * Open a command prompt of Microsoft Visual Studio, such as "Developer Command Prompt for VS2013"; - * Type the command: `cd C:\MyWorkspace\edk2-platforms` - * Type the command: `BuildBIOS.bat /B /VS13 /x64 Broxton Release` to build a release version. - (Please use "/VS15" flag for Visual Studio 2015 build; Replace "/B" with "/A" flag for MinnowBoard 3 FAB A board) - - 2. To build a 64-bit debug version - * Open a command prompt of Microsoft Visual Studio, such as "Developer Command Prompt for VS2013"; - * Type the command: `cd C:\MyWorkspace\edk2-platforms` - * Type the command: `BuildBIOS.bat /B /VS13 /x64 Broxton Debug` to build a debug version. - (Please use "/VS15" flag for Visual Studio 2015 build; Replace "/B" with "/A" flag for MinnowBoard 3 FAB A board) - - 3. After the build successfully completes, the 8MB firmware binary image will be located in the - following location on your local hard drive: - - * "C:\MyWorkspace\edk2-platforms\Platform\BroxtonPlatformPkg\Common\Tools\Stitch" - -## 3. HOW TO BUILD (LINUX ENVIRONMENT) - -Linux System Configuration: - - Ubuntu 16.04 64-bit - - bash shell - - gcc version 5 or above - -1. Setup Build Environment - Use below command to install required packages: - ``` - # sudo apt-get update - # sudo apt-get install nasm - # sudo apt-get install iasl - # sudo apt-get install build-essential - # sudo apt-get install uuid-dev - ``` -2. Build Steps (64-bit) - 1. To build a 64-bit release version - * Open a command prompt, type command: `cd ~/src/MyWorkspace/edk2-platforms`; - * For MinnowBoard 3 FAB B, type the command:`./BuildBIOS.sh /B Release` to build a release version. - (Replace "/B" with "/A" for MinnowBoard 3 FAB A board) - 2. To build a 64-bit debug version - * Open a command prompt, type command: `cd ~/src/MyWorkspace/edk2-platforms`; - * For MinnowBoard 3 FAB B, type the command:`./BuildBIOS.sh /B Debug` to build a debug version. - (Replace "/B" with "/A" for MinnowBoard 3 FAB A board) - 3. After the build successfully completes, the 8MB firmware binary image will be located in the - following location on your local hard drive: - - * "~/src/MyWorkspace/edk2-platforms/Platform/BroxtonPlatformPkg/Common/Tools/Stitch/" +To report issues on this codebase, please use [TianoCore Bugzilla](https://bugzilla.tianocore.org/). For more information, please refer to the [Reporting Issues](https://github.com/tianocore/tianocore.github.io/wiki/Reporting-Issues) entry on the [TianoCore wiki](https://github.com/tianocore/tianocore.github.io/wiki). ## MAINTAINERS @@ -175,4 +40,3 @@ Linux System Configuration: * vincent.zimmer@intel.com * mike.wu@intel.com * shifeix.a.lu@intel.com - -- cgit v1.2.3