summaryrefslogtreecommitdiff
path: root/ReadMe.MD
blob: a42260e7d3dd070fb640c57310ca3bdc5dbb976d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178

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.

# INDEX

1.  HOW TO CREATE A FULL SOURCE TREE
2.  HOW TO BUILD (WINDOWS ENVIRONMENT)
3.  MAINTAINERS

## 1. HOW TO CREATE A FULL SOURCE TREE

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").

   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.

2. Get MinnowBoard v3 branch from GitHub with the following command.
   * `git clone -b devel-MinnowBoard3-UDK2017 https://github.com/tianocore/edk2-platforms.git`

   Once the download completes, all EDK II packages and files will be found
   under the "C:\MyWorkspace\edk2-platforms" directory.

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\)

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"

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

      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"

      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"

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/"

## MAINTAINERS

* david.wei@intel.com
* mang.guo@intel.com
* vincent.zimmer@intel.com
* mike.wu@intel.com
* shifeix.a.lu@intel.com