INTEL_BIOS 编译—for-ATOM_E3800

===============================================================================
Intel(R) MinnowBoardMax 0.84 Open Source Release 
Dec 10th, 2015
================================================================================

================================================================================
                                  DISCLAIMER
================================================================================
This release note as well as the software described in it is furnished under license
and may only be used or copied in accordance with the terms of the license. The
information in this manual is furnished for informational use only, is subject to
change without notice, and should not be construed as a commitment by Intel Corporation.
Intel Corporation assumes no responsibility or liability for any errors or inaccuracies
that may appear in this document or any software that may be provided in association
with this document.
Except as permitted by such license, no part of this document may be reproduced,
stored in a retrieval system, or transmitted in any form or by any means without
the express written consent of Intel Corporation.

================================================================================
                               ADDITIONAL DISCLAIMER
================================================================================
This release is targeted at a open source release for MinnowBoardMax platform with 
Baytrail SOC, Please refer to "NEW FEATURES AND CHANGES IN RELEASE" section for 
new features in this release.

================================================================================
                                    INDEX 
================================================================================
1.  FILES LIST
2.  HOW TO CREATE A FULL SOURCE TREE
3.  HOW TO BUILD (WINDOWS ENVIRONMENT)
    (using the binary integrated platform initialization code modules)
    
4.  HOW TO BUILD USING THE INTEL(R) FIRMWARE SUPPORT PACKAGE (INTEL(R) FSP) (WINDOWS ENVIRONMENT)
    (this build is OPTIONAL and uses the Intel(R) FSP platform initialization 
     binary module instead of the binary integrated platform initialization code 
     modules)
    
    NOTE: Both Intel(R) FSP and the binary integrated platform initialization 
          code modules are based upon UEFI/PI industry specification conformant 
          code.
          
          Further details between Intel(R) FSP and the binary integrated platform 
          initialization code modules may be found at the end of these release notes.
          
5.  HOW TO BUILD (LINUX ENVIRONMENT)
6.  TEST ENVIRONMENT
7.  SUPPORTED (NEW) FEATURES AND CHANGES IN RELEASE
8.  KNOWN ISSUES
9.  HOW TO BUILD SPI LOCK FIRMWARE IMAGE
10. HOW TO UPDATE THE PLATFORM BIOS FIRMWARE IMAGE
11. INTEL(R) FSP AND THE BINARY INTEGRATED PLATFORM INITIALIZATION CODE MODULES
12. MISC

================================================================================
1.                                FILES LIST
================================================================================
1. MinnowBoard MAX Rev.0.84-ReleaseNotes.txt
   Release note for Intel(R) MinnowBoardMax 0.84 open source release.
      
================================================================================
2.                           HOW TO CREATE A FULL SOURCE TREE
================================================================================
1) Create a new folder (directory) on the root of your local hard drive (development machine)
   for use as your work space (for example "C:\MyWorkspace").

2) Create the following folders (sub-directories) from your workspace (e.g. "C:\MyWorkspace"):

Note: The following list of folders recieve packages from revision 16867 available at:
      https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1

       BaseTools               
       Conf                    
       CryptoPkg               
       EdkCompatibilityPkg     
       EdkShellBinPkg          
       FatBinPkg               
       IntelFrameworkModulePkg 
       IntelFrameworkPkg       
       MdeModulePkg            
       MdePkg                  
       NetworkPkg              
       PcAtChipsetPkg          
       PerformancePkg          
       SecurityPkg             
       ShellBinPkg             
       ShellPkg                
       SourceLevelDebugPkg     
       UefiCpuPkg
       IntelFspPkg
       IntelFspWrapperPkg
       
Note: The next two folders are to receive packages from revision 19122

       Vlv2DeviceRefCodePkg
       Vlv2TbltDevicePkg    
       
   
3) Obtain revision 16867 of the BSD-licensed source code packages and files from the SVN (SubVersion) 
   repository of the UDK2014.SP1 branch at: https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1 
   (tianocore.org - hosted by sourceforge.net)whose names correspond to the package names above (#2) 
   and place them into the folders (subdirectories) which you created for them in step 2 (above):
   
    3.1 From the same repository identified in step 3 (above) obtain the two files below and place them
              into your work space main folder (directory) (e.g. "C:\Workspace"):
              
          		edksetup.bat
          		edksdtup.sh
              
4) Get following platform packages from revision 19122 of UDK2014.SP1 branch
      https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1.
      
       Vlv2DeviceRefCodePkg
       Vlv2TbltDevicePkg        
       
5) Create the folder (sub-directory) "FatPkg" in your local workspace (e.g. "C:\MyWorkspace" ):

6) Download the FatPkg, revision 92 from: https://svn.code.sf.net/p/edk2-fatdriver2/code/trunk/FatPkg. 
   Place it into the folder created in Step 5.
       
        
7) Download the file "MinnowBoard_MAX-0.84-Binary.Objects.zip" from http://firmware.intel.com/projects/minnowboard-max. 
   Unzip the contents of the folders identified in the ZIP file into the same folders (sub-drectories) located 
   on your your local workspace (e.g. "C:\Workspace").
   

================================================================================
3.                           HOW TO BUILD (WINDOWS ENVIRONMENT)
================================================================================
Windows System Configuration:
  Microsoft Windows 7 Ultimate 64-bit*
  
1. Setup Build Environment
   1) Install C compiler (the default is Visual Studio .NET 2008) in the 
      build machine.
      
   2) Obtain and install version Python 2.6.4 from: https://www.python.org/download/releases/2.6.4/
      Make sure that a file with the extension of ".py" will be opened by Python.exe.
       
2. Extract Source Code
   1) Follow the instructions of "HOW TO CREATE A FULL SOURCE TREE" (step 2 above) to create a 
      full source tree.
      
   2) Follow the instructions found in the file "Patch-HOWTO.txt" located in your workspace
      (e.g. "C:\MyWorkspace\CryptoPkg\Library\OpensslLib\Patch-HOWTO.txt") to install the 
      Openssl source code.
      
3. Install the iasl compiler by downloading acpica-win-20141107.zip from the following location:
   "https://acpica.org/downloads/version-20141107" and place the unzipped content ("iasl.exe") into 
   the directory "C:\ASL" on your local hard drive (create the folder "C:\ASL" if it does not exist).

4a. Build Steps (32-bit)
   1) To build a 32-bit release version
      Open a command prompt window (make certain you "Run as Administrator"). 
      Type the command: "cd C:\MyWorkspace\Vlv2TbltDevicePkg" 
      Type the command "Build_IFWI.bat /IA32 MNW2 Release" to build a release version.
      
   2) To build a 32-bit debug version
      Open a command prompt window (make certain you "Run as Administrator"). 
      Type the command: "cd C:\MyWorkspace\Vlv2TbltDevicePkg" 
      Type command "Build_IFWI.bat /IA32 MNW2 Debug" to build a debug version.
               
   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\Vlv2TbltDevicePkg\Stitch\"

4b. Build Steps (64-bit)
   1) To build a 64-bit release version
      Open a command prompt window (make certain you "Run as Administrator"). 
      Type the command: "cd C:\MyWorkspace\Vlv2TbltDevicePkg" 
      Type the command "Build_IFWI.bat MNW2 Release" to build a release version.
      
   2) To build a 64-bit debug version
      Open a command prompt window (make certain you "Run as Administrator"). 
      Type the command: "cd C:\MyWorkspace\Vlv2TbltDevicePkg" 
      Type command "Build_IFWI.bat MNW2 Debug" to build a debug version.
               
   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\Vlv2TbltDevicePkg\Stitch\"
            
================================================================================================
4. HOW TO BUILD USING THE INTEL(R) FIRMWARE SUPPORT PACKAGE (INTEL(R) FSP) (WINDOWS ENVIRONMENT)
================================================================================================

1. Download the Intel(R) Firmware Support Package (Intel(R) FSP) for the Intel(R) Atom(tm) Processor
   E3800 Series (BAY_TRAIL_FSP_KIT.exe) from the following location:

   http://downloadcenter.intel.com/confirm.aspx?httpDown=http://downloadmirror.intel.com/23719/eng/BAY_TRAIL_FSP_KIT.exe&Lang=eng&Dwnldid=23719
   
   After downloading install BAY_TRAIL_FSP_KIT.exe in the "C:\temp" directory. Follow the instructions
   provided by the installer.  You must accept the license agreement to successfully install Intel(R) FSP.
   Have the installer create the directory "BAY_TRAIL_FSP_KIT" on "C:\" (if you do not already have the
   directory). When the installer completes, you will find the directory "C:\BAY_TRAIL_FSP_KIT"
   
   Within the directory "C:\BAY_TRAIL_FSP_KIT" you will find another directory titled "FSP" where there
   are two files that are required to build the MinnowBoard MAX firmware using the Intel(R) FSP in a
   Windows system build environment. The two files are:
   
   "BAYTRAIL_FSP_GOLD_002_10-JANUARY-2014.fd" and 
   "BayTrailFsp.bsf"

2. Open the file "BayTrailFsp.bsf" in your text editor.

3. Change each line in the file as follows (line numbers have been provided to assist you in locating
   the line to change - do not add the line number as part of the change)"
   
   Line #     CHANGE THE TEXT TO READ:
   
   24         SKUID = 1, "DEFAULT"
   31         $gPlatformFspPkgTokenSpaceGuid_PcdMrcInitTsegSize        2 bytes $_DEFAULT_ = 0x0008
   35         $gPlatformFspPkgTokenSpaceGuid_PcdeMMCBootMode           1 byte $_DEFAULT_  = 0
   36         $gPlatformFspPkgTokenSpaceGuid_PcdEnableSdio             1 byte $_DEFAULT_  = 0
   44         $gPlatformFspPkgTokenSpaceGuid_PcdEnableAzalia           1 byte $_DEFAULT_  = 1
   45         $gPlatformFspPkgTokenSpaceGuid_AzaliaConfigPtr           4 bytes $_DEFAULT_  = 0xFFDF8000
   47         $gPlatformFspPkgTokenSpaceGuid_PcdEnableLpe              1 byte $_DEFAULT_  = 0
   48         $gPlatformFspPkgTokenSpaceGuid_PcdLpssSioEnablePciMode   1 byte $_DEFAULT_  = 0
   51         $gPlatformFspPkgTokenSpaceGuid_PcdEnableI2C0             1 byte $_DEFAULT_  = 0
   52         $gPlatformFspPkgTokenSpaceGuid_PcdEnableI2C1             1 byte $_DEFAULT_  = 0
   53         $gPlatformFspPkgTokenSpaceGuid_PcdEnableI2C2             1 byte $_DEFAULT_  = 0
   54         $gPlatformFspPkgTokenSpaceGuid_PcdEnableI2C3             1 byte $_DEFAULT_  = 0
   55         $gPlatformFspPkgTokenSpaceGuid_PcdEnableI2C4             1 byte $_DEFAULT_  = 0
   70         $gPlatformFspPkgTokenSpaceGuid_PcdEnableSecureBoot       1 byte $_DEFAULT_  = 0
   72         $DIMM_MemDown                                            1 byte $_DEFAULT_ = 1
   73         $DRAM_Speed                                              1 byte $_DEFAULT_ = 1
   77         $DIMM_DWidth_0_0                                         1 byte $_DEFAULT_ = 1
   78         $DIMM_Density_0_0                                        1 byte $_DEFAULT_ = 2
   81         $tCL                                                     1 byte $_DEFAULT_ = 7
   82         $tRP_tRCD                                                1 byte $_DEFAULT_ = 7
   83         $tWR                                                     1 byte $_DEFAULT_ = 8
   84         $tWTR                                                    1 byte $_DEFAULT_ = 5
   85         $tRRD                                                    1 byte $_DEFAULT_ = 6
   86         $tRTP                                                    1 byte $_DEFAULT_ = 4
   87         $tFAW                                                    1 byte $_DEFAULT_ = 28   

    Note: The values set for the terms defined above are for a 2 Gigabyte memory configuration
          with a single or quad core. If your MinnowBoard MAX memory type and size is different
          you must set the values correctly for your memory type and size
    
4. Download the Intel(R) Binary Configuration Tool (Intel(R) BCT BCT) (revision 3.1.2-1686.Win32) 
   from the following location:

   http://downloadcenter.intel.com/confirm.aspx?httpDown=http://downloadmirror.intel.com/23619/eng/bct-3.1.2-i686.win32.exe&Lang=eng&Dwnldid=23619

   NOTE: The file name of the file which will be downloaded is "bct-3.1.3-i686.win32.exe"
   
   After installing BCT, launch (open) the tool. Within the BCT tool, click "Open BSF" button and choose 
   the file "C:\Temp\FSP\BayTrailFsp.bsf"
   
   Change the configuration as instructed in the steps below:

   a) Select from the BCT menu bar "Binary Tools" followed by "Patch." Within the pop-up insert the following
      text "C:\Temp\FSP\BAYTRAIL_FSP_GOLD_002_10-JANUARY-2014.fd" in the text box labeled 
      "Input binary file to patch"
      
      Within the text box labeled "Output patched file" enter the following text:
      "C:\MyWorkspace\Vlv2MiscBinariesPkg\FspBinary\FvFsp.bin"  
      
      Place a "check mark" in the  "Rebase binary at the following address (hex)" checkbox.
      Change the address from what is displayed (typically 0x0 or 0xfffc0000) to 0xFFDB0000 .
      
      Click "OK"
      
      The patched FvFsp.bin file will be created.

5. To enable the build to use Intel(R) FSP:

   1) Open the file Vlv2TbltDevicePkg\PlatformPkgConfig.dsc in your editor
   2) Modify the following:
           Change "DEFINE MINNOW2_FSP_BUILD" macro from "FALSE" to "TRUE".
           DEFINE MINNOW2_FSP_BUILD = TRUE
       
       Where:
      "TRUE" means FSP build enabled
      "FALSE" means FSP build disabled
       
6. Build the fimware binary image using Intel(r) FSP as follows for a Windows System Configuration of 
   Microsoft Windows 7 Ultimate 64-bit*

   
   1. Setup Build Environment
      1) Install C compiler (the default is Visual Studio .NET 2008) in the 
         build machine.
         
      2) Obtain and install version Python 2.6.4 from: https://www.python.org/download/releases/2.6.4/
         Make sure that a file with the extension of ".py" will be opened by Python.exe.
          
   2. Extract Source Code
      1) Follow the instructions of "HOW TO CREATE A FULL SOURCE TREE" (step 2 above) to create a 
         full source tree.
         
      2) Follow the instructions found in the file "Patch-HOWTO.txt" located in your workspace
         (e.g. "C:\MyWorkspace\CryptoPkg\Library\OpensslLib\Patch-HOWTO.txt") to install the 
         Openssl source code.
         
   3. Install the iasl compiler by downloading acpica-win-20141107.zip from the following location:
      "https://acpica.org/downloads/version-20141107" and place the unzipped content ("iasl.exe") into 
      the directory "C:\ASL" on your local hard drive (create the folder "C:\ASL" if it does not exist).
   
   4. Build Steps     
      1) To build a release version
         Open a command prompt window (make certain you "Run as Administrator"). 
         Type the command: "cd C:\MyWorkspace\Vlv2TbltDevicePkg" 
         Type the command "Build_IFWI.bat MNW2 Release" to build a release version.
         
      2) To build a debug version
         Open a command prompt window (make certain you "Run as Administrator"). 
         Type the command: "cd C:\MyWorkspace\Vlv2TbltDevicePkg" 
         Type command "Build_IFWI.bat MNW2 Debug" to build a debug version.
                  
      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\Vlv2TbltDevicePkg\Stitch\"

================================================================================ 
5.                        HOW TO BUILD (LINUX ENVIRONMENT)
================================================================================

Linux System Configuration:
  Ubuntu 12.04 32bit
  GCC version: 4.6.3

1.  Setup Build Environment
    1) Follow instructions for setting up the EDK build environment on tianocore.org.
       "http://tianocore.sourceforge.net/wiki/Using_EDK_II_with_Native_GCC"
       
    2) Use your distributions package manager to install nasm for use building UDK2014.SP1
    For example, if you were using Fedora "out-of-the-box) you would enter:
       # apt-get install nasm
       
    3) For current GCC build, make sure the iasl tool version you installed is 
    
       "20120518-32 [Aug 15 2014]" or newer. 
       
       i) Download ASL build tool @ https://acpica.org/downloads
      ii) The requirements for generating ACPICA tools from source code are:
      
          flex: version 2.5.4 or greater
          bison: version 2.4.1 or greater
          # apt-get install bison flex 
          
     iii) To generate and install the iasl tool in usr/bin
     
          # make clean
          # make iasl
          # make install          
       
2. Extract Source Code
   1) Follow the instructions of "HOW TO CREATE A FULL SOURCE TREE" (see section 2 above) to create a 
      full source tree.
      
   2)Follow the instructions found in the file "Patch-HOWTO.txt" located in your workspace
     (e.g. "C:\MyWorkspace\CryptoPkg\Library\OpensslLib\Patch-HOWTO.txt") to install the 
     Openssl source code.
      
3. Build Steps
   1) Make the required build script and binary as executable file:
   
      # chmod +x edksetup.sh bld_vlv.sh Build_IFWI.sh GenBiosId       
      
   2) To build a release version
      Open a command prompt, type command "cd ~/src/MyWorkspace/Vlv2TbltDevicePkg" to 
      Enter your workspace directory. then type command ". Build_IFWI.sh MNW2 Release" 
         
   3) To build a debug version
      Open a command prompt, type command "cd ~/src/MyWorkspace/Vlv2TbltDevicePkg" to 
      Enter your workspace directory. then type command ". Build_IFWI.sh MNW2 Debug"
               
   4) After the build successfully completes, the firmware binary image will be located in the
      following location on your local hard drive: 
      
      "~/src/MyWorkspace/Vlv2TbltDevicePkg/Stitch/"

================================================================================
6.                             TEST ENVIRONMENT
================================================================================
1. MinnowBoard Max, MinnowBoard Turbot
2. SD card, USB drive, SATA 
3. HDMI Displaye
4. USB Keyboard
5. Linux (Yocto build) version: 3.19.5 
6. Windows8.1 Embedded/Windows10  
   1) Windows8.1 32bit ISO
      9600.17050.WINBLUE_REFRESH.140317-1640_X86FRE_EMBEDDEDINDUSTRY_EN-US-IR3_CEI_X86FRE_EN-US_DV9.ISO
   2) Windows8.1 64bit ISO
      9600.17050.WINBLUE_REFRESH.140317-1640_X64FRE_EMBEDDEDINDUSTRY_EN-US-IR3_CEI_X64FRE_EN-US_DV9.ISO    
   3) Windows10 32bit ISO
      10586.0.151029-1700.TH2_RELEASE_CLIENTPRO-CORE_OEMRET_X86FRE_EN-US.ISO
      
================================================================================
7.                SUPPORTED (NEW) FEATURES AND CHANGES IN RELEASE
================================================================================
1. The 64bit BIOS is now functional with Linux and Windows 8.1 Embedded.
2. The 32bit BIOS is now functional with Windows 8.1 Embedded.
3. Supports booting from "SD card", "USB drive" and "SATA".
4. Supports S3 resume for both Linux and Windows 8.1 Embedded.
5. Supports 64bit image GCC build (32bit image GCC build is not supported),
   Tip can boot Windows 8 and Linux.
6. Main changes in this release
     1) Add 'yL' build option to build SPI lock firmware image.
     2) Optimize the flash layout and change firmware size from 3M to 4M.
     3) Add a uefi application for example about how to update ACPI Ssdt table.
     4) Implement the feature that all bios setup will be reset in case of the jumper 
        is present on Turbot Board.
     5) Add "RTC Battery Present" item in setup page.  
     6) Fixed some open bugs. Please visit the following link for details
        https://wiki.yoctoproject.org/wiki/Minnow_Bug_Triage 
================================================================================
8.                                KNOWN ISSUES
================================================================================
1. Optimization for a fastboot feature continues, therefore the boot time is more than 
   2 seconds.
2. Because the binary size created using GCC (Linux environment) is ~20% lager than the size of 
   the binary created using the Microsoft toolchain (Windows Environment), the firmware build
   in the Linux environment (GCC build) uses the minimum shell instead of fullshell, The image 
   built in the Linux environment (GCC build) may have some limitation for UEFI shell application.

================================================================================
9.                 HOW TO BUILD SPI LOCK FIRMWARE IMAGE
================================================================================
1. "/yL" build option is to enable SPI lock firmware build.
   1) Type the command "Build_IFWI.bat /yL MNW2 Release" to build a release version.
   2) Type the command "Build_IFWI.bat /yL MNW2 Debug" to build a Debug version.
2. Known issue
   With SPI lock firmware, the firmware update under uefi shell by using FirmwareUpdateXXX.efi is 
   unavailable, we can use only DediProg tool to update firmware image in this case. 

================================================================================
10.                HOW TO UPDATE THE PLATFORM BIOS FIRMWARE IMAGE
================================================================================
1. Instructions for updating the 64-bit BIOS image when executing within a 64-bit environment:

   1) Copy "FirmwareUpdateX64.efi" file to storage device (Sdcard, Udisk, or Sata)
   2) Enter UEFI shell
   3) Type the "fsX:" command under UEFI shell where the "fs" portion of the term "fsX" is the term 
      used for your storage device, and the "X" portion of the term "fsX" is replaced by the index  
      identifier of the storage device being used (for example, fs0:).  
   4) Type the following command to update 64bit bios image:
   
      # FirmwareUpdateX64.efi  <TargetIA64BiosImageFileName>
      
   5) The system will automatically shutdown after the update is complete.  

*-*-*-*-*-*-

2. Instructions for updating the 32-bit BIOS image when executing within a 64-bit environment:

   1) Copy the "FirmwareUpdateX64.efi" file to the storage device (Sdcard, Udisk, or Sata)
   2) Enter UEFI shell
   3) Type the "fsX:" command under UEFI shell where the "fs" portion of the term "fsX" is the term 
      used for your storage device, and the "X" portion of the term "fsX" is replaced by the index  
      identifier of the storage device being used (for example, fs0:).  
   4) Type the following command to update 32-bit BIOS image:
   
      # FirmwareUpdateX64.efi  <TargetIA32BiosImageFileName>
      
   5) The system will automatically shutdown after the update has completed.    

*-*-*-*-*-*-

3. Instructions for updating the 64-bit BIOS image when executing within a 32-bit environment:

   1) Copy the "FirmwareUpdateIA32.efi" file to the storage device (Sdcard, Udisk, or Sata)
   2) Enter UEFI shell
   3) Type the "fsX:" command under UEFI shell where the "fs" portion of the term "fsX" is the term 
      used for your storage device, and the "X" portion of the term "fsX" is replaced by the index  
      identifier of the storage device being used (for example, fs0:). 
   4) Type the following command to update 64-bit BIOS image:  
   
      # FirmwareUpdateIA32.efi  <TargetX64BiosImageFileName>
      
   5) The system will automatically shutdown after the update has completed.  
   
*-*-*-*-*-*-

4. Instructions for updating the 32-bit BIOS image when executing within a 32-bit environment:

   1) Copy "FirmwareUpdateIA32.efi" file to the storage device (Sdcard, Udisk, or Sata)
   2) Enter UEFI shell
   3) Type the "fsX:" command under UEFI shell where the "fs" portion of the term "fsX" is the term 
      used for your storage device, and the "X" portion of the term "fsX" is replaced by the index  
      identifier of the storage device being used (for example, fs0:). 
   4) Type the following command to update 32bit bios image:
   
      # FirmwareUpdateIA32.efi  <TargetX32BiosImageFileName>
      
   5) The system will automatically shutdown after the update has completed.  

*-*-*-*-*-*-

5. How to enable FSP build
   1) Open Vlv2TbltDevicePkg\PlatformPkgConfig.dsc.
   2) Modify "DEFINE MINNOW2_FSP_BUILD" macro from "FALSE" to "TRUE".
      DEFINE MINNOW2_FSP_BUILD = TRUE
      "TRUE" means FSP build enabled
      "FALSE" means FSP build disabled

6. How to configure memory parameters for new custom platforms
   
  If you want to configure memory parameters for your own platform, the following 
  steps must be done before building the source tree. 

   (1)	Open the platform DSC file, which is <MyWorkspace>/ Vlv2TbltDevicePkg/ PlatformPkgIA32.dsc or <MyWorkspace>/ Vlv2TbltDevicePkg/ PlatformPkgX64.dsc depending on your which CPU architecture you prefer to support. 

   (2)  Search in the platform DSC file for following PCDs. There are a total of 17 
        PCDs for memory parameter configuration.
        Taking PCD "VlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|FALSE", 
        for example,  the string before "|" represents PCD name, while the string 
        after "|" represents configurable PCD value. 
        And the comment, which is above the PCD and marked by #, provides the 
        usage of the PCD and valid selectable values. 

  #######################################################################################################
  #
  # Begin of MRC parameters
  #
  
  ## Memory Parameter Patchable.
  #  FALSE - MRC Parameters are fixed for MinnowBoard Max<BR>
  #  TRUE  - MRC Parameters are patchable by following PCDs<BR>
  # @Prompt Memory Parameter Patchable.
  # @ValidList 0x80000001 | 0, 1  
  gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|FALSE
  
  ## Memory Down or DIMM slot.
  #  0 - DIMM<BR>
  #  1 - Memory Down<BR>
  # @Prompt Enable Memory Down
  # @ValidList 0x80000001 | 0, 1
  gVlvRefCodePkgTokenSpaceGuid.PcdEnableMemoryDown|1
     
  ## The speed of DRAM.
  #  0 - 800 MHz<BR>
  #  1 - 1066 MHz<BR>
  #  2 - 1333 MHz<BR>
  #  3 - 1600 MHz<BR>
  # @Prompt DRAM Speed
  # @ValidList 0x80000001 | 0, 1, 2, 3
  gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|1

  ## DRAM Type.
  #  0 - DDR3<BR>
  #  1 - DDR3L<BR>
  #  2 - DDR3U<BR>
  #  3 - DDR3All<BR>
  #  4 - LPDDR2<BR>
  #  5 - LPDDR3<BR>
  #  6 - DDR4<BR>
  # @Prompt DRAM Type
  # @ValidList 0x80000001 | 0, 1, 2, 3, 4, 5, 6
  gVlvRefCodePkgTokenSpaceGuid.PcdDramType|1

  .
  .
  .

  #
  # End of MRC parameters.
  # 
  ###############################################################################################   

   (3) Change the value of gVlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable 
       to be TRUE before configuring any other PCDs, just like 
       "VlvRefCodePkgTokenSpaceGuid.PcdMemoryParameterPatchable|TRUE"
  
   (4) Change other PCD values according to the new memory parameters of your 
       platform, with the help of the comments . For example, if your DRAM speed 
       is 1600MHz, you should configure  the value of 
       gVlvRefCodePkgTokenSpaceGuid.PcdDramSpeed to be 3, just like 
       "VlvRefCodePkgTokenSpaceGuid.PcdDramSpeed|3"

   (5) Run build command, such as "Build_IFWI MNW2 Debug" to build your source 
       tree. The new BIOS image will support the new memory parameter.

7. How to enable fTPM feature.   
   1) Enable fTPM feature for IA32 firmware
      Please follow these steps as below to turn on fTPM option in setup page: 
      i) Boot to uefi setup page 
     ii) Run into the option "Device Manager" -> "System Setup" -> "Security Configuration"
         -> "PTT", setup the option from "Disable" to "Enable".
    iii) Save the setup option changes then reboot system.
   
   2) Enable fTPM feature for X64 firmware
      Since the default build macro of fTPM is FALSE, need to turn on the fTPM build macro then 
      rebuild X64 firmware. 
      i) Open MyWorkspace/Vlv2TbltDevicePkg/PlatformPkgX64.dsc 
     ii) Modified the following macro from "FALSE" to "TRUE" then rebuild X64 firmware.
         DEFINE SEC_ENABLE = TRUE
         DEFINE SEC_DEBUG_INFO_ENABLE = TRUE
         DEFINE FTPM_ENABLE = TRUE
      After updating the new X64 firmware, still need to follow these setups as below to turn 
      on fTPM option in setup pages.
      i) Boot to uefi setup page.
     ii) Run into the option "Device Manager" -> "System Setup" -> "Security Configuration"
         -> "PTT", setup the option from "Disable" to "Enable".
    iii) Save the setup option changes then reboot system.
      
8. Virus scanned by McAfee VirusScan Enterprise 8.8.0, Virus Definitions 7800, 
   no virus detected.

================================================================================

11. INTEL(R) FSP AND THE BINARY INTEGRATED PLATFORM INITIALIZATION CODE MODULES)

================================================================================

Intel(R) FSP has the advantage of being a single module with two entry points: the first at pre-
memory initialization tone and the second at post-memory initialization) with the return from
the second to the next stage of the platform firmware (whether UEFI based or not).   

The integrated platform initialization code modules are based upon a series of Intel binary modules 
put together to form PEI and DXE operations per the UEFI PI specifications.  There are not "entry points"
as in Intel(R) FSP as the binary integrated platform initialization code modules are linked at build 
time, meaning, if the developer needed to add additional operations to the PI phase, they could simply 
add the code to the build between the modules provided.

The formal release for MinnowBoard MAX makes use of the integrated PI code - it is the default build and that
which is subjected to rigorous QA/Validation.
.  
Intel(R) FSP is an option provided but is not tested in the same rigor as the default build - it is subject to
"unit test" only (testing performed within the development engineering environment). 

================================================================================
12.                                   MISC
================================================================================
1. Virus scanned by McAfee VirusScan Enterprise 8.8.0, Virus Definitions 8011, 
   no virus detected.

* Other names and brands may be claimed as the property of others.

[END OF RELEASE NOTES]
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值