From: "Sun, Zailiang" <zailiang.sun@intel.com>
To: "Kinney, Michael D" <michael.d.kinney@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Qian, Yi" <yi.qian@intel.com>
Subject: Re: [Patch 16/16] Vlv2TbltDevicePkg: Update Readme.md
Date: Thu, 9 May 2019 07:58:15 +0000 [thread overview]
Message-ID: <7CB7EF03E15B5D48981329A508747A9850C62F10@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <20190509043111.15272-17-michael.d.kinney@intel.com>
Hi Michael,
It seems that GCC build instructions does not work. Tried adding a line "cd .." before the
line "mkdir Conf" then it worked.
> -----Original Message-----
> From: Kinney, Michael D
> Sent: Thursday, May 9, 2019 12:31 PM
> To: devel@edk2.groups.io
> Cc: Sun, Zailiang <zailiang.sun@intel.com>; Qian, Yi <yi.qian@intel.com>
> Subject: [Patch 16/16] Vlv2TbltDevicePkg: Update Readme.md
>
> Cc: Zailiang Sun <zailiang.sun@intel.com>
> Cc: Yi Qian <yi.qian@intel.com>
> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
> ---
> Vlv2TbltDevicePkg/Readme.md | 232 +++++++++++++++++++++++++++++-
> ------
> 1 file changed, 190 insertions(+), 42 deletions(-)
>
> diff --git a/Vlv2TbltDevicePkg/Readme.md b/Vlv2TbltDevicePkg/Readme.md
> index 139aa4ea61..647d0ba361 100644
> --- a/Vlv2TbltDevicePkg/Readme.md
> +++ b/Vlv2TbltDevicePkg/Readme.md
> @@ -1,39 +1,18 @@
> # **EDK II firmware for Minnowboard Max/Turbot which is based on Intel
> Valleyview2 SoC (Byatrail platform)**
>
> ----------
> -
> -
> -## **How to Create a Full Source Tree for Minnowboard Max/Turbot under
> Windows** -### Pre-requisites
> +# Windows Pre-requisites
>
> * GIT client: Available from https://git-scm.com/downloads
>
> -### Download Source Code
> -* Create a new directory C:\WORKSPACE as an EDK II work space.
> -
> -* GIT clone operations required to pull the EDK II source tree and the edk2-
> non-osi repository. Run below command in git bash or windows command
> line.
> -
> - - cd C:\WORKSPACE
> - - git clone https://github.com/tianocore/edk2.git
> - - git clone https://github.com/tianocore/edk2-non-osi.git
> -
> - Note: The EDK II [Multiple
> Workspace](https://github.com/tianocore/tianocore.github.io/wiki/Multiple
> _Workspace)
> -feature is used by this project.
> -
> -* Follow the instructions found in the file "OpenSSL-HOWTO.txt" in your
> work space (e.g.
> "C:\WORKSPACE\edk2\CryptoPkg\Library\OpensslLib\OpenSSL-HOWTO.txt")
> to install the Openssl source code.
> -
> -## **Windows Build Instructions**
> -
> -### Pre-requisites Tools
> -
> * Microsoft Visual Studio.
> - Visual Studio 2015 recommended and is used in the examples below.
> Visual Studio 2013 is also supported.
> -
> +
> * WINDDK
> - Download Microsoft Windows Driver Development Kit 3790.1830 and
> install it to C:\WINDDK\3790.1830.
> -
> -* Python 2.7
> - - Available from http://www.python.org. Install Python to C:\Python27,
> and add the path "C:\Python27" to system environment variable
> **PYTHON_HOME**.
> +
> +* Python 3
> + - https://www.python.org/downloads/
>
> * Install iASL
> - Install the iasl compiler by downloading iasl-win-20160527.zip from the
> following @@ -42,34 +21,203 @@ feature is used by this project.
> (create the folder "C:\ASL" if it does not exist).
>
> * Install the NASM* assembly language compiler
> - - Download NASM* 2.12.02 binaries from
> + - Download NASM* 2.12.02 binaries from
> http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/win64/nasm-
> 2.12.02-win64.zip and place the
> unzipped content ("nasm.exe") into the directory "C:\NASM" on your local
> hard drive
> (create the folder "C:\NASM" if it does not exist). Add the path
> "C:\NASM\" to system environment variable **NASM_PREFIX**.
>
> * Install Openssl
> - - Download a pre-compiled Openssl Windows binary from
> - https://wiki.openssl.org/index.php/Binaries. Search for a Windows binary
> in the list
> - of "Third Party OpenSSL Related Binary Distributions". Go to the third party
> site to
> - download the latest version. Download and extract to C:\Openssl, add the
> path of openssl.exe
> + - Download a pre-compiled Openssl Windows binary from
> + https://wiki.openssl.org/index.php/Binaries. Search for a Windows binary
> in the list
> + of "Third Party OpenSSL Related Binary Distributions". Go to the third
> party site to
> + download the latest version. Download and extract to C:\Openssl, add
> + the path of openssl.exe
> ("C:\openssl") to system environment variable **OPENSSL_PATH**.
>
> +# Download and Build MinnowMax using Windows/Visual Studio
>
> +Run the script below from an empty directory. The script clones the
> +EDK II repository from GitHub and downloads and unzips the binary
> +support files for the MinnowBoard MAX. It then sets up the environment
> +for EDK II builds and builds the MinnowBoard MAX firmware and generates
> +UEFI Capsules that can be used to update the MinnowBoard MAX firmware
> and three sample devices.
>
> -### Build Commands
> - * cd C:\WORKSPACE\edk2\Vlv2TbltDevicePkg
> +```
> +git clone --recurse-submodules https://github.com/tianocore/edk2.git
>
> - * To build 64-bit release version image: Build_IFWI.bat MNW2 Release
> +powershell "& {[Net.ServicePointManager]::SecurityProtocol =
> [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest -Uri
> "https://indy.fulgan.com/SSL/openssl-1.0.2r-x64_86-win64.zip -OutFile
> openssl-1.0.2r-x64_86-win64.zip"}"
> +powershell Expand-Archive openssl-1.0.2r-x64_86-win64.zip
>
> - * To build 64-bit debug version image: Build_IFWI.bat MNW2 Debug
> -
> - * To build 32-bit release version image: Build_IFWI.bat /IA32 MNW2
> Release
> +powershell "& {[Net.ServicePointManager]::SecurityProtocol =
> [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest -Uri
> "https://firmware.intel.com/sites/default/files/MinnowBoardMax-
> Development190216.zip -OutFile MinnowBoardMax-
> Development190216.zip"}"
> +powershell Expand-Archive MinnowBoardMax-Development190216.zip
> +sleep 1
> +rename MinnowBoardMax-Development190216 Vlv2Binaries cd
> Vlv2Binaries
> +powershell Expand-Archive Vlv2SocBinPkg.zip .
> +sleep 1
> +cd ..
>
> - * To build 32-bit debug version image: Build_IFWI.bat /IA32 MNW2 Debug
> +powershell "& {[Net.ServicePointManager]::SecurityProtocol =
> [Net.SecurityProtocolType]::Tls12; Invoke-WebRequest -Uri
> "https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/win64/nasm-
> 2.13.03-win64.zip -OutFile nasm-2.13.03-win64.zip"}"
> +powershell Expand-Archive nasm-2.13.03-win64.zip .
>
> -### Output
> -* After the build process successfully completes, the 8MB firmware binary
> image will -be located in the following location on your local hard drive:
> -"C:\WORKSPACE\edk2\Vlv2TbltDevicePkg\Stitch\"
> +mkdir Conf
>
> +set WORKSPACE=%CD%
> +set EDK_TOOLS_PATH=%WORKSPACE%\edk2\BaseTools
> +set EDK_TOOLS_BIN=%EDK_TOOLS_PATH%\BinWrappers\WindowsLike
> +set PACKAGES_PATH=%WORKSPACE%\edk2;%WORKSPACE%\Vlv2Binaries
> +path=%path%;%EDK_TOOLS_PATH%\Bin\Win32;%WORKSPACE%\openssl-
> 1.0.2r-x64_8
> +6-win64 set NASM_PREFIX=%WORKSPACE%\nasm-2.13.03\
>
> +cd %WORKSPACE%\edk2
> +
> +call edkSetup.bat Rebuild
> +
> +cd Vlv2TbltDevicePkg
> +
> +Build_IFWI.bat /m /y MNW2 Debug
> +```
> +
> +Once all the code and tools are downloaded and installed, only the
> +following commands are required to setup the environment. Run these
> +from the same directory used to install the source and binaries.
> +
> +```
> +set WORKSPACE=%CD%
> +set EDK_TOOLS_PATH=%WORKSPACE%\edk2\BaseTools
> +set EDK_TOOLS_BIN=%EDK_TOOLS_PATH%\BinWrappers\WindowsLike
> +set PACKAGES_PATH=%WORKSPACE%\edk2;%WORKSPACE%\Vlv2Binaries
> +path=%path%;%EDK_TOOLS_PATH%\Bin\Win32;%WORKSPACE%\openssl-
> 1.0.2r-x64_8
> +6-win64 set NASM_PREFIX=%WORKSPACE%\nasm-2.13.03\
> +
> +cd %WORKSPACE%\edk2
> +
> +call edkSetup.bat Rebuild
> +```
> +
> +Once the environment is setup, the MinnowBoard MAX firmware and
> +capsules can be rebuilt using the following commands.
> +
> +* Build Debug Image
> +
> +```
> +cd Vlv2TbltDevicePkg
> +Build_IFWI.bat /m /y MNW2 Debug
> +```
> +
> +* Build Release Image
> +
> +```
> +cd Vlv2TbltDevicePkg
> +Build_IFWI.bat /m /y MNW2 Release
> +```
> +
> +The generated firmware image is the newest `.bin` file in
> `edk2/Vlv2TbltDevicePkg/Stitch`.
> +The file is in the form `MNW2MAX1.X64.0084.D01.<DATE>.bin`.
> +
> +The CapsuleApp and generated UEFI Capsules are in
> +`Build/Vlv2TbltDevicePkg/Capsules`
> +
> +# Download and Build MinnowMax using Linux/GCC
> +
> +Run the script below from an empty directory. The script clones the
> +EDK II repository from GitHub and downloads and unzips the binary
> +support files for the MinnowBoard MAX. It then sets up the environment
> +for EDK II builds and builds the MinnowBoard MAX firmware and generates
> +UEFI Capsules that can be used to update the MinnowBoard MAX firmware
> and three sample devices.
> +
> +```
> +git clone --recurse-submodules https://github.com/tianocore/edk2.git
> +
> +mkdir Vlv2Binaries
> +cd Vlv2Binaries
> +wget
> +https://firmware.intel.com/sites/default/files/MinnowBoardMax-
> Developme
> +nt190216.zip unzip MinnowBoardMax-Development190216.zip
> +unzip Vlv2SocBinPkg.zip
> +
> +mkdir Conf
> +
> +export WORKSPACE=$PWD/edk2
> +export PACKAGES_PATH=$PWD/Vlv2Binaries
> +export EDK_TOOLS_PATH=$WORKSPACE/BaseTools
> +
> +cd edk2
> +cd Vlv2TbltDevicePkg
> +. Build_IFWI.sh MNW2 Debug
> +```
> +
> +Once all the code is downloaded and installed, only the following
> +commands are required to setup the environment. Run these from the
> +same directory used to install the source and binaries.
> +
> +```
> +export WORKSPACE=$PWD/edk2
> +export PACKAGES_PATH=$PWD/Vlv2Binaries
> +export EDK_TOOLS_PATH=$WORKSPACE/BaseTools
> +
> +cd edk2
> +cd Vlv2TbltDevicePkg
> +```
> +
> +Once the environment is setup, the MinnowBoard MAX firmware and
> +capsules can be rebuilt using the following commands.
> +
> +
> +* Build Debug Image
> +
> +```
> +cd Vlv2TbltDevicePkg
> +./Build_IFWI.sh MNW2 Debug
> +```
> +
> +* Build Release Image
> +
> +```
> +cd Vlv2TbltDevicePkg
> +./Build_IFWI.sh MNW2 Release
> +```
> +
> +The generated firmware image is the
> `MNW2MAX_X64_D_0084_01_GCC.bin`
> +file in `edk2\Vlv2TbltDevicePkg\Stitch`
> +
> +The CapsuleApp and generated UEFI Capsules are in
> +`Build\Vlv2TbltDevicePkg\Capsules`
> +
> +# Use DediProg to update FLASH image on a MinnowBoard MAX Target
> +
> +# Update MinnowBoard MAX Firmware from UEFI Capsules
> +
> +* Copy the `Build/Vlv2TbltDevicePkg/Capsules` directory to a USB FLASH
> +drive
> +* Connect USB FLASH Drive to MinnowBoard MAX
> +* Boot MinnowBoard MAX to the Boot Manager
> +* Boot the `EFI Internal Shell` boot option
> +* Mount the USB FLASH Drive (usually `FS1`)
> +* Use `cd` command to go to `Capsules/TestCert` directory
> +* Run the following command to apply all four capsules
> +
> +```
> +CapsuleApp.efi Red.cap Green.cap Blue.cap MinnowMax.cap ```
> +
> +* The MinnowBoard MAX should reboot and the four capsules are applied
> +in the
> + order listed. The progress bar matches the color name of the capsule.
> + MinnowMax.cap uses the color purple. Once all capsules are
> +processed, the
> + MinnowBoard MAX should reboot again using the new firmware images.
> +
> +# Generate and Test a UX BitMap Capsule
> +
> +* Use bitmap editor to generate a BMP file. Recommend resolution of
> +600 wide
> + by 100 tell and either 24 or 32 bits per pixel.
> +* Save BMP file to USB FLASH drive
> +* Use CapsuleApp.efi to convert BMP file to a UX Capsule
> +
> +```
> +CapsuleApp.efi -G MyImage.bmp -O MyImage.cap ```
> +
> +* When updating firmware using capsules, add UX capsule to the list of
> +capsules
> + passed into CapsuleApp.efi.
> +
> +```
> +CapsuleApp.efi MyImage.cap Red.cap Green.cap Blue.cap MinnowMax.cap
> ```
> +
> +* When the capsules are processed the UX bitmap image should be
> +displayed at the
> + bottom of the screen.
> --
> 2.21.0.windows.1
next prev parent reply other threads:[~2019-05-09 7:58 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-09 4:30 [Patch 00/16] Vlv2TbltDevicePkg: Sync with edk2/master Michael D Kinney
2019-05-09 4:30 ` [Patch 01/16] Vlv2TbltDevicePkg/PlatformFlashAccessLib: Add error return Michael D Kinney
2019-05-09 7:53 ` Sun, Zailiang
2019-05-09 7:53 ` Sun, Zailiang
2019-05-09 13:18 ` Qian, Yi
2019-05-09 4:30 ` [Patch 02/16] Vlv2TbltDevicePkg/AcpiPlatform: Change Size type to UINTN Michael D Kinney
2019-05-09 8:15 ` Sun, Zailiang
2019-05-09 13:19 ` Qian, Yi
2019-05-09 4:30 ` [Patch 03/16] Vlv2TbltDevicePkg/AcpiPlatform: Add variable protocols to depex Michael D Kinney
2019-05-09 7:53 ` Sun, Zailiang
2019-05-09 13:18 ` Qian, Yi
2019-05-09 4:30 ` [Patch 04/16] Vlv2TbltDevicePkg/PpmPolicy: Fix call to MP Services Protocol Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:19 ` Qian, Yi
2019-05-09 4:31 ` [Patch 05/16] Vlv2TbltDevicePkg/SmBiosMiscDxe: Fix GCC build issue Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:19 ` Qian, Yi
2019-05-09 4:31 ` [Patch 06/16] Vlv2TbltDevicePkg: Find UEFI Shell using gUefiShellFileGuid Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:19 ` Qian, Yi
2019-05-09 4:31 ` [Patch 07/16] Vlv2TbltDevicePkg: Build full UEFI Shell from sources Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:19 ` Qian, Yi
2019-05-09 4:31 ` [Patch 08/16] Vlv2TbltDevicePkg: Use CpuDxe from UefiCpuPkg Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:18 ` Qian, Yi
2019-05-09 4:31 ` [Patch 09/16] Vlv2TbltDevicePkg: Add PchInitSmm module Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:20 ` Qian, Yi
2019-05-09 4:31 ` [Patch 10/16] Vlv2TbltDevicePkg: Always enable QuietBoot to produce BGRT Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:20 ` Qian, Yi
2019-05-09 4:31 ` [Patch 11/16] Vlv2TbltDevicePkg/Stitch/Gcc: Update default setting binary Michael D Kinney
2019-05-09 7:54 ` Sun, Zailiang
2019-05-09 13:20 ` Qian, Yi
2019-05-09 4:31 ` [Patch 12/16] Vlv2TbltDevicePkg: Remove directory assumptions from build scripts Michael D Kinney
2019-05-09 7:55 ` Sun, Zailiang
2019-05-09 13:21 ` Qian, Yi
2019-05-09 4:31 ` [Patch 13/16] Vlv2TbltDevicePkg/Capsule: Do not clear UEFI varstore Michael D Kinney
2019-05-09 7:55 ` Sun, Zailiang
2019-05-09 13:20 ` Qian, Yi
2019-05-09 4:31 ` [Patch 14/16] Vlv2TbltDevicePkg/Capsule: Remove path to openssl tools Michael D Kinney
2019-05-09 7:55 ` Sun, Zailiang
2019-05-09 13:20 ` Qian, Yi
2019-05-09 4:31 ` [Patch 15/16] Vlv2TbltDevicePkg/Capsule: Add Linux/LVFS generation scripts Michael D Kinney
2019-05-09 7:55 ` Sun, Zailiang
2019-05-09 13:21 ` Qian, Yi
2019-05-09 4:31 ` [Patch 16/16] Vlv2TbltDevicePkg: Update Readme.md Michael D Kinney
2019-05-09 7:58 ` Sun, Zailiang [this message]
2019-05-09 13:21 ` Qian, Yi
2019-05-09 13:18 ` [Patch 00/16] Vlv2TbltDevicePkg: Sync with edk2/master Qian, Yi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7CB7EF03E15B5D48981329A508747A9850C62F10@SHSMSX104.ccr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox