[coreboot-gerrit] New patch to review for coreboot: Do not commit: unify fsp 1.0

Stefan Reinauer (stefan.reinauer@coreboot.org) gerrit at coreboot.org
Fri May 6 03:37:39 CEST 2016


Stefan Reinauer (stefan.reinauer at coreboot.org) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14629

-gerrit

commit c439de123dd324f8b0dba59310fd2d28706c5582
Author: Stefan Reinauer <stefan.reinauer at coreboot.org>
Date:   Thu May 5 18:36:19 2016 -0700

    Do not commit: unify fsp 1.0
    
    Just playing around.
    
    Change-Id: I7ed2766880d8a65c10bf20baddf4978cd16ef1be
    Signed-off-by: Stefan Reinauer <stefan.reinauer at coreboot.org>
---
 src/vendorcode/intel/Makefile.inc                  |   1 +
 .../intel/fsp1_0/baytrail/include/azalia.h         |  66 ---
 src/vendorcode/intel/fsp1_0/baytrail/include/fsp.h |  69 ---
 .../intel/fsp1_0/baytrail/include/fspapi.h         |  65 ---
 .../intel/fsp1_0/baytrail/include/fspffs.h         | 506 -------------------
 .../intel/fsp1_0/baytrail/include/fspfv.h          | 247 ----------
 .../intel/fsp1_0/baytrail/include/fsphob.h         | 542 --------------------
 .../intel/fsp1_0/baytrail/include/fspinfoheader.h  |  62 ---
 .../intel/fsp1_0/baytrail/include/fspplatform.h    |  78 ---
 .../intel/fsp1_0/baytrail/include/fsptypes.h       | 116 -----
 .../intel/fsp1_0/baytrail/srx/board_fsp.c          |   9 +-
 .../intel/fsp1_0/broadwell_de/include/fsp.h        |  45 --
 .../intel/fsp1_0/broadwell_de/include/fspapi.h     | 107 ----
 .../fsp1_0/broadwell_de/include/fspbootmode.h      |  45 --
 .../intel/fsp1_0/broadwell_de/include/fspffs.h     | 506 -------------------
 .../intel/fsp1_0/broadwell_de/include/fspfv.h      | 247 ----------
 .../intel/fsp1_0/broadwell_de/include/fsphob.h     | 427 ----------------
 .../fsp1_0/broadwell_de/include/fspinfoheader.h    | 118 -----
 .../fsp1_0/broadwell_de/include/fspplatform.h      |  75 ---
 .../intel/fsp1_0/broadwell_de/include/fspsupport.h | 118 -----
 .../intel/fsp1_0/broadwell_de/include/fsptypes.h   | 220 ---------
 src/vendorcode/intel/fsp1_0/include/azalia.h       |  66 +++
 src/vendorcode/intel/fsp1_0/include/fsp.h          |  46 ++
 src/vendorcode/intel/fsp1_0/include/fspapi.h       |  67 +++
 src/vendorcode/intel/fsp1_0/include/fspbootmode.h  |  54 ++
 src/vendorcode/intel/fsp1_0/include/fspffs.h       | 507 +++++++++++++++++++
 src/vendorcode/intel/fsp1_0/include/fspfv.h        | 249 ++++++++++
 src/vendorcode/intel/fsp1_0/include/fspguid.h      |  69 +++
 src/vendorcode/intel/fsp1_0/include/fsphob.h       | 544 +++++++++++++++++++++
 .../intel/fsp1_0/include/fspinfoheader.h           |  62 +++
 src/vendorcode/intel/fsp1_0/include/fspplatform.h  | 149 ++++++
 src/vendorcode/intel/fsp1_0/include/fspsupport.h   |  95 ++++
 src/vendorcode/intel/fsp1_0/include/fsptypes.h     | 183 +++++++
 .../fsp1_0/ivybridge_bd82x6x/include/fspapi.h      |  63 ---
 .../fsp1_0/ivybridge_bd82x6x/include/fspffs.h      | 506 -------------------
 .../intel/fsp1_0/ivybridge_bd82x6x/include/fspfv.h | 247 ----------
 .../fsp1_0/ivybridge_bd82x6x/include/fsphob.h      | 507 -------------------
 .../ivybridge_bd82x6x/include/fspinfoheader.h      |  62 ---
 .../fsp1_0/ivybridge_bd82x6x/include/fspplatform.h |  63 ---
 .../fsp1_0/ivybridge_bd82x6x/include/fsptypes.h    | 116 -----
 .../fsp1_0/ivybridge_bd82x6x/include/mem_config.h  | 131 -----
 .../fsp1_0/ivybridge_bd82x6x/include/peifsp.h      |  42 --
 .../intel/fsp1_0/ivybridge_i89xx/include/fspapi.h  |  49 --
 .../intel/fsp1_0/ivybridge_i89xx/include/fspffs.h  | 506 -------------------
 .../intel/fsp1_0/ivybridge_i89xx/include/fspfv.h   | 247 ----------
 .../intel/fsp1_0/ivybridge_i89xx/include/fsphob.h  | 507 -------------------
 .../fsp1_0/ivybridge_i89xx/include/fspinfoheader.h |  62 ---
 .../fsp1_0/ivybridge_i89xx/include/fspplatform.h   |  52 --
 .../fsp1_0/ivybridge_i89xx/include/fsptypes.h      | 116 -----
 .../fsp1_0/ivybridge_i89xx/include/mem_config.h    | 131 -----
 .../intel/fsp1_0/ivybridge_i89xx/include/peifsp.h  |  42 --
 .../intel/fsp1_0/rangeley/include/fspapi.h         |  67 ---
 .../intel/fsp1_0/rangeley/include/fspbootmode.h    |  54 --
 .../intel/fsp1_0/rangeley/include/fspffs.h         | 507 -------------------
 .../intel/fsp1_0/rangeley/include/fspfv.h          | 249 ----------
 .../intel/fsp1_0/rangeley/include/fspguid.h        |  69 ---
 .../intel/fsp1_0/rangeley/include/fsphob.h         | 544 ---------------------
 .../intel/fsp1_0/rangeley/include/fspinfoheader.h  |  62 ---
 .../intel/fsp1_0/rangeley/include/fspplatform.h    | 114 -----
 .../intel/fsp1_0/rangeley/include/fspsupport.h     |  95 ----
 .../intel/fsp1_0/rangeley/include/fsptypes.h       | 183 -------
 .../intel/fsp1_0/rangeley/include/fspvpd.h         |  89 ----
 62 files changed, 2099 insertions(+), 9143 deletions(-)

diff --git a/src/vendorcode/intel/Makefile.inc b/src/vendorcode/intel/Makefile.inc
index 1f9ef6d..693406e 100644
--- a/src/vendorcode/intel/Makefile.inc
+++ b/src/vendorcode/intel/Makefile.inc
@@ -20,6 +20,7 @@ FSP_C_INPUTS := $(foreach file, $(FSP_SRC_FILES), $(FSP_PATH)/srx/$(notdir $(fil
 ramstage-y += $(FSP_C_INPUTS)
 
 CFLAGS_x86_32 += -Isrc/vendorcode/intel/$(FSP_PATH)/include
+CFLAGS_x86_32 += -Isrc/vendorcode/intel/fsp1_0/include
 endif
 
 ifeq ($(CONFIG_UEFI_2_4_BINDING),y)
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/azalia.h b/src/vendorcode/intel/fsp1_0/baytrail/include/azalia.h
deleted file mode 100644
index c58cf4c..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/azalia.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/**@file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _AZALIA_H_
-#define _AZALIA_H_
-
-#include <stdint.h>
-
-#pragma pack(1)
-
-typedef struct {
-  uint32_t  VendorDeviceId;
-  uint16_t  SubSystemId;
-  uint8_t   RevisionId;                       /// 0xFF applies to all steppings
-  uint8_t   FrontPanelSupport;
-  uint16_t  NumberOfRearJacks;
-  uint16_t  NumberOfFrontJacks;
-} PCH_AZALIA_VERB_TABLE_HEADER;
-
-typedef struct {
-  PCH_AZALIA_VERB_TABLE_HEADER  VerbTableHeader;
-  uint32_t                        *VerbTableData;
-} PCH_AZALIA_VERB_TABLE;
-
-typedef struct {
-  uint8_t                 Pme       : 1;      /// 0: Disable; 1: Enable
-  uint8_t                 DS        : 1;      /// 0: Docking is not supported; 1:Docking is supported
-  uint8_t                 DA        : 1;      /// 0: Docking is not attached; 1:Docking is attached
-  uint8_t                 HdmiCodec : 1;      /// 0: Disable; 1: Enable
-  uint8_t                 AzaliaVCi : 1;      /// 0: Disable; 1: Enable
-  uint8_t                 Rsvdbits  : 3;
-  uint8_t                 AzaliaVerbTableNum; /// Number of verb tables provided by platform
-  PCH_AZALIA_VERB_TABLE  *AzaliaVerbTable;   /// Pointer to the actual verb table(s)
-  uint16_t                ResetWaitTimer;     /// The delay timer after Azalia reset, the value is number of microseconds
-} PCH_AZALIA_CONFIG;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fsp.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fsp.h
deleted file mode 100644
index f2e1d8f..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fsp.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-/** \file  fsp.h
- *
- *
- */
-#include <stdint.h>
-#include "fsptypes.h"
-#include "fspfv.h"
-#include "fspffs.h"
-#include "fsphob.h"
-#include "fspapi.h"
-#include "fspplatform.h"
-#include "fspinfoheader.h"
-#include "fspvpd.h"
-
-#define FSP_HOB_RESOURCE_OWNER_FSP_GUID \
-{ 0x69a79759, 0x1373, 0x4367, { 0xa6, 0xc4, 0xc7, 0xf5, 0x9e, 0xfd, 0x98, 0x6e } }
-#define FSP_NON_VOLATILE_STORAGE_HOB_GUID \
-{ 0x721acf02, 0x4d77, 0x4c2a, { 0xb3, 0xdc, 0x27, 0xb, 0x7b, 0xa9, 0xe4, 0xb0 } }
-#define FSP_HOB_RESOURCE_OWNER_TSEG_GUID \
-{ 0xd038747c, 0xd00c, 0x4980, { 0xb3, 0x19, 0x49, 0x01, 0x99, 0xa4, 0x7d, 0x55 } }
-#define FSP_HOB_RESOURCE_OWNER_GRAPHICS_GUID \
-{ 0x9c7c3aa7, 0x5332, 0x4917, { 0x82, 0xb9, 0x56, 0xa5, 0xf3, 0xe6, 0x2a, 0x07 } }
-#define FSP_BOOTLOADER_TEMPORARY_MEMORY_HOB_GUID \
-{ 0xbbcff46c, 0xc8d3, 0x4113, { 0x89, 0x85, 0xb9, 0xd4, 0xf3, 0xb3, 0xf6, 0x4e } }
-
-//
-// 0x21 - 0xf..f are reserved.
-//
-#define BOOT_WITH_FULL_CONFIGURATION                  0x00
-#define BOOT_WITH_MINIMAL_CONFIGURATION               0x01
-#define BOOT_ASSUMING_NO_CONFIGURATION_CHANGES        0x02
-#define BOOT_WITH_FULL_CONFIGURATION_PLUS_DIAGNOSTICS 0x03
-#define BOOT_WITH_DEFAULT_SETTINGS                    0x04
-#define BOOT_ON_S4_RESUME                             0x05
-#define BOOT_ON_S5_RESUME                             0x06
-#define BOOT_ON_S2_RESUME                             0x10
-#define BOOT_ON_S3_RESUME                             0x11
-#define BOOT_ON_FLASH_UPDATE                          0x12
-#define BOOT_IN_RECOVERY_MODE                         0x20
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fspapi.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fspapi.h
deleted file mode 100644
index 26afc0e..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fspapi.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_API_H_
-#define _FSP_API_H_
-
-#pragma pack(1)
-
-typedef VOID (* CONTINUATION_PROC)(EFI_STATUS Status, VOID *HobListPtr);
-
-typedef struct {
-  VOID               *NvsBufferPtr;
-  VOID               *RtBufferPtr;
-  CONTINUATION_PROC   ContinuationFunc;
-} FSP_INIT_PARAMS;
-
-typedef struct {
-  UINT32            *StackTop;
-  UINT32             BootMode;
-  VOID              *UpdDataRgnPtr;
-  UINT32             Reserved[7];
-} FSP_INIT_RT_COMMON_BUFFER;
-
-typedef enum {
-  EnumInitPhaseAfterPciEnumeration = 0x20,
-  EnumInitPhaseReadyToBoot = 0x40
-} FSP_INIT_PHASE;
-
-typedef struct {
-  FSP_INIT_PHASE     Phase;
-} NOTIFY_PHASE_PARAMS;
-
-#pragma pack()
-
-typedef FSP_STATUS (FSPAPI *FSP_FSP_INIT)    (FSP_INIT_PARAMS     *FspInitParamPtr);
-typedef FSP_STATUS (FSPAPI *FSP_NOTFY_PHASE) (NOTIFY_PHASE_PARAMS *NotifyPhaseParamPtr);
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fspffs.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fspffs.h
deleted file mode 100644
index f3b83b2..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fspffs.h
+++ /dev/null
@@ -1,506 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-
-#ifndef __PI_FIRMWARE_FILE_H__
-#define __PI_FIRMWARE_FILE_H__
-
-#pragma pack(1)
-///
-/// Used to verify the integrity of the file.
-///
-typedef union {
-  struct {
-    ///
-    /// The IntegrityCheck.Checksum.Header field is an 8-bit checksum of the file
-    /// header. The State and IntegrityCheck.Checksum.File fields are assumed
-    /// to be zero and the checksum is calculated such that the entire header sums to zero.
-    ///
-    UINT8   Header;
-    ///
-    /// If the FFS_ATTRIB_CHECKSUM (see definition below) bit of the Attributes
-    /// field is set to one, the IntegrityCheck.Checksum.File field is an 8-bit
-    /// checksum of the file data.
-    /// If the FFS_ATTRIB_CHECKSUM bit of the Attributes field is cleared to zero,
-    /// the IntegrityCheck.Checksum.File field must be initialized with a value of
-    /// 0xAA. The IntegrityCheck.Checksum.File field is valid any time the
-    /// EFI_FILE_DATA_VALID bit is set in the State field.
-    ///
-    UINT8   File;
-  } Checksum;
-  ///
-  /// This is the full 16 bits of the IntegrityCheck field.
-  ///
-  UINT16    Checksum16;
-} EFI_FFS_INTEGRITY_CHECK;
-
-///
-/// FFS_FIXED_CHECKSUM is the checksum value used when the
-/// FFS_ATTRIB_CHECKSUM attribute bit is clear.
-///
-#define FFS_FIXED_CHECKSUM  0xAA
-
-typedef UINT8 EFI_FV_FILETYPE;
-typedef UINT8 EFI_FFS_FILE_ATTRIBUTES;
-typedef UINT8 EFI_FFS_FILE_STATE;
-
-///
-/// File Types Definitions
-///
-#define EFI_FV_FILETYPE_ALL                   0x00
-#define EFI_FV_FILETYPE_RAW                   0x01
-#define EFI_FV_FILETYPE_FREEFORM              0x02
-#define EFI_FV_FILETYPE_SECURITY_CORE         0x03
-#define EFI_FV_FILETYPE_PEI_CORE              0x04
-#define EFI_FV_FILETYPE_DXE_CORE              0x05
-#define EFI_FV_FILETYPE_PEIM                  0x06
-#define EFI_FV_FILETYPE_DRIVER                0x07
-#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08
-#define EFI_FV_FILETYPE_APPLICATION           0x09
-#define EFI_FV_FILETYPE_SMM                   0x0A
-#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
-#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
-#define EFI_FV_FILETYPE_SMM_CORE              0x0D
-#define EFI_FV_FILETYPE_OEM_MIN               0xc0
-#define EFI_FV_FILETYPE_OEM_MAX               0xdf
-#define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
-#define EFI_FV_FILETYPE_DEBUG_MAX             0xef
-#define EFI_FV_FILETYPE_FFS_MIN               0xf0
-#define EFI_FV_FILETYPE_FFS_MAX               0xff
-#define EFI_FV_FILETYPE_FFS_PAD               0xf0
-///
-/// FFS File Attributes.
-///
-#define FFS_ATTRIB_LARGE_FILE         0x01
-#define FFS_ATTRIB_FIXED              0x04
-#define FFS_ATTRIB_DATA_ALIGNMENT     0x38
-#define FFS_ATTRIB_CHECKSUM           0x40
-
-///
-/// FFS File State Bits.
-///
-#define EFI_FILE_HEADER_CONSTRUCTION  0x01
-#define EFI_FILE_HEADER_VALID         0x02
-#define EFI_FILE_DATA_VALID           0x04
-#define EFI_FILE_MARKED_FOR_UPDATE    0x08
-#define EFI_FILE_DELETED              0x10
-#define EFI_FILE_HEADER_INVALID       0x20
-
-
-///
-/// Each file begins with the header that describe the
-/// contents and state of the files.
-///
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file.
-  ///
-  EFI_GUID                Name;
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK IntegrityCheck;
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE         Type;
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES Attributes;
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  ///
-  UINT8                   Size[3];
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE      State;
-} EFI_FFS_FILE_HEADER;
-
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file. There may be only
-  /// one instance of a file with the file name GUID of Name in any given firmware
-  /// volume, except if the file type is EFI_FV_FILETYPE_FFS_PAD.
-  ///
-  EFI_GUID                  Name;
-
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK   IntegrityCheck;
-
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE           Type;
-
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES   Attributes;
-
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  /// The length of the file data is either (Size - sizeof(EFI_FFS_FILE_HEADER)). This calculation means a
-  /// zero-length file has a Size of 24 bytes, which is sizeof(EFI_FFS_FILE_HEADER).
-  /// Size is not required to be a multiple of 8 bytes. Given a file F, the next file header is
-  /// located at the next 8-byte aligned firmware volume offset following the last byte of the file F.
-  ///
-  UINT8                     Size[3];
-
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE        State;
-
-  ///
-  /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
-  /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
-  ///
-  UINT32                    ExtendedSize;
-} EFI_FFS_FILE_HEADER2;
-
-#define IS_FFS_FILE2(FfsFileHeaderPtr) \
-    (((((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Attributes) & FFS_ATTRIB_LARGE_FILE) == FFS_ATTRIB_LARGE_FILE)
-
-#define FFS_FILE_SIZE(FfsFileHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Size) & 0x00ffffff))
-
-#define FFS_FILE2_SIZE(FfsFileHeaderPtr) \
-    (((EFI_FFS_FILE_HEADER2 *) (UINTN) FfsFileHeaderPtr)->ExtendedSize)
-
-typedef UINT8 EFI_SECTION_TYPE;
-
-///
-/// Pseudo type. It is used as a wild card when retrieving sections.
-///  The section type EFI_SECTION_ALL matches all section types.
-///
-#define EFI_SECTION_ALL                   0x00
-
-///
-/// Encapsulation section Type values.
-///
-#define EFI_SECTION_COMPRESSION           0x01
-
-#define EFI_SECTION_GUID_DEFINED          0x02
-
-#define EFI_SECTION_DISPOSABLE            0x03
-
-///
-/// Leaf section Type values.
-///
-#define EFI_SECTION_PE32                  0x10
-#define EFI_SECTION_PIC                   0x11
-#define EFI_SECTION_TE                    0x12
-#define EFI_SECTION_DXE_DEPEX             0x13
-#define EFI_SECTION_VERSION               0x14
-#define EFI_SECTION_USER_INTERFACE        0x15
-#define EFI_SECTION_COMPATIBILITY16       0x16
-#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17
-#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18
-#define EFI_SECTION_RAW                   0x19
-#define EFI_SECTION_PEI_DEPEX             0x1B
-#define EFI_SECTION_SMM_DEPEX             0x1C
-
-///
-/// Common section header.
-///
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-  EFI_SECTION_TYPE  Type;
-  ///
-  /// Declares the section type.
-  ///
-} EFI_COMMON_SECTION_HEADER;
-
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-
-  EFI_SECTION_TYPE  Type;
-
-  ///
-  /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
-  /// Size is not equal to 0xFFFFFF, then this field does not exist.
-  ///
-  UINT32            ExtendedSize;
-} EFI_COMMON_SECTION_HEADER2;
-
-///
-/// Leaf section type that contains an
-/// IA-32 16-bit executable image.
-///
-typedef EFI_COMMON_SECTION_HEADER  EFI_COMPATIBILITY16_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_COMPATIBILITY16_SECTION2;
-
-///
-/// CompressionType of EFI_COMPRESSION_SECTION.
-///
-#define EFI_NOT_COMPRESSED        0x00
-#define EFI_STANDARD_COMPRESSION  0x01
-///
-/// An encapsulation section type in which the
-/// section data is compressed.
-///
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                      UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                       CompressionType;
-} EFI_COMPRESSION_SECTION;
-
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                        UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                         CompressionType;
-} EFI_COMPRESSION_SECTION2;
-
-///
-/// An encapsulation section type in which the section data is disposable.
-/// A disposable section is an encapsulation section in which the section data may be disposed of during
-/// the process of creating or updating a firmware image without significant impact on the usefulness of
-/// the file. The Type field in the section header is set to EFI_SECTION_DISPOSABLE. This
-/// allows optional or descriptive data to be included with the firmware file which can be removed in
-/// order to conserve space. The contents of this section are implementation specific, but might contain
-/// debug data or detailed integration instructions.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DISPOSABLE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DISPOSABLE_SECTION2;
-
-///
-/// The leaf section which could be used to determine the dispatch order of DXEs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DXE_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DXE_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a PI FV.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
-
-///
-/// The leaf section which contains a single GUID.
-///
-typedef struct {
-  ///
-  /// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                    SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                      SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
-
-///
-/// Attributes of EFI_GUID_DEFINED_SECTION.
-///
-#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED  0x01
-#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID    0x02
-///
-/// The leaf section which is encapsulation defined by specific GUID.
-///
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                    SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                      DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                      Attributes;
-} EFI_GUID_DEFINED_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                      SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                        DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                        Attributes;
-} EFI_GUID_DEFINED_SECTION2;
-
-///
-/// The leaf section which contains PE32+ image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PE32_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PE32_SECTION2;
-
-///
-/// The leaf section used to determine the dispatch order of PEIMs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PEI_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PEI_DEPEX_SECTION2;
-
-///
-/// A leaf section type that contains a position-independent-code (PIC) image.
-/// A PIC image section is a leaf section that contains a position-independent-code (PIC) image.
-/// In addition to normal PE32+ images that contain relocation information, PEIM executables may be
-/// PIC and are referred to as PIC images. A PIC image is the same as a PE32+ image except that all
-/// relocation information has been stripped from the image and the image can be moved and will
-/// execute correctly without performing any relocation or other fix-ups. EFI_PIC_SECTION2 must
-/// be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PIC_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PIC_SECTION2;
-
-///
-/// The leaf section which constains the position-independent-code image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_TE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_TE_SECTION2;
-
-///
-/// The leaf section which contains an array of zero or more bytes.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_RAW_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_RAW_SECTION2;
-
-///
-/// The SMM dependency expression section is a leaf section that contains a dependency expression that
-/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
-/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
-/// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
-/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
-/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a unicode string that
-/// is human readable file name.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      FileNameString[1];
-} EFI_USER_INTERFACE_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  CHAR16                        FileNameString[1];
-} EFI_USER_INTERFACE_SECTION2;
-
-///
-/// The leaf section which contains a numeric build number and
-/// an optional unicode string that represents the file revision.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  UINT16                      BuildNumber;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      VersionString[1];
-} EFI_VERSION_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// A UINT16 that represents a particular build. Subsequent builds have monotonically
-  /// increasing build numbers relative to earlier builds.
-  ///
-  UINT16                        BuildNumber;
-  CHAR16                        VersionString[1];
-} EFI_VERSION_SECTION2;
-
-#define IS_SECTION2(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff) == 0x00ffffff)
-
-#define SECTION_SIZE(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff))
-
-#define SECTION2_SIZE(SectionHeaderPtr) \
-    (((EFI_COMMON_SECTION_HEADER2 *) (UINTN) SectionHeaderPtr)->ExtendedSize)
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fspfv.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fspfv.h
deleted file mode 100644
index 26c00f2..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fspfv.h
+++ /dev/null
@@ -1,247 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_FIRMWAREVOLUME_H__
-#define __PI_FIRMWAREVOLUME_H__
-
-///
-/// EFI_FV_FILE_ATTRIBUTES
-///
-typedef UINT32  EFI_FV_FILE_ATTRIBUTES;
-
-//
-// Value of EFI_FV_FILE_ATTRIBUTES.
-//
-#define EFI_FV_FILE_ATTRIB_ALIGNMENT      0x0000001F
-#define EFI_FV_FILE_ATTRIB_FIXED          0x00000100
-#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED  0x00000200
-
-///
-/// type of EFI FVB attribute
-///
-typedef UINT32  EFI_FVB_ATTRIBUTES_2;
-
-//
-// Attributes bit definitions
-//
-#define EFI_FVB2_READ_DISABLED_CAP  0x00000001
-#define EFI_FVB2_READ_ENABLED_CAP   0x00000002
-#define EFI_FVB2_READ_STATUS        0x00000004
-#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
-#define EFI_FVB2_WRITE_ENABLED_CAP  0x00000010
-#define EFI_FVB2_WRITE_STATUS       0x00000020
-#define EFI_FVB2_LOCK_CAP           0x00000040
-#define EFI_FVB2_LOCK_STATUS        0x00000080
-#define EFI_FVB2_STICKY_WRITE       0x00000200
-#define EFI_FVB2_MEMORY_MAPPED      0x00000400
-#define EFI_FVB2_ERASE_POLARITY     0x00000800
-#define EFI_FVB2_READ_LOCK_CAP      0x00001000
-#define EFI_FVB2_READ_LOCK_STATUS   0x00002000
-#define EFI_FVB2_WRITE_LOCK_CAP     0x00004000
-#define EFI_FVB2_WRITE_LOCK_STATUS  0x00008000
-#define EFI_FVB2_ALIGNMENT          0x001F0000
-#define EFI_FVB2_ALIGNMENT_1        0x00000000
-#define EFI_FVB2_ALIGNMENT_2        0x00010000
-#define EFI_FVB2_ALIGNMENT_4        0x00020000
-#define EFI_FVB2_ALIGNMENT_8        0x00030000
-#define EFI_FVB2_ALIGNMENT_16       0x00040000
-#define EFI_FVB2_ALIGNMENT_32       0x00050000
-#define EFI_FVB2_ALIGNMENT_64       0x00060000
-#define EFI_FVB2_ALIGNMENT_128      0x00070000
-#define EFI_FVB2_ALIGNMENT_256      0x00080000
-#define EFI_FVB2_ALIGNMENT_512      0x00090000
-#define EFI_FVB2_ALIGNMENT_1K       0x000A0000
-#define EFI_FVB2_ALIGNMENT_2K       0x000B0000
-#define EFI_FVB2_ALIGNMENT_4K       0x000C0000
-#define EFI_FVB2_ALIGNMENT_8K       0x000D0000
-#define EFI_FVB2_ALIGNMENT_16K      0x000E0000
-#define EFI_FVB2_ALIGNMENT_32K      0x000F0000
-#define EFI_FVB2_ALIGNMENT_64K      0x00100000
-#define EFI_FVB2_ALIGNMENT_128K     0x00110000
-#define EFI_FVB2_ALIGNMENT_256K     0x00120000
-#define EFI_FVB2_ALIGNMENT_512K     0x00130000
-#define EFI_FVB2_ALIGNMENT_1M       0x00140000
-#define EFI_FVB2_ALIGNMENT_2M       0x00150000
-#define EFI_FVB2_ALIGNMENT_4M       0x00160000
-#define EFI_FVB2_ALIGNMENT_8M       0x00170000
-#define EFI_FVB2_ALIGNMENT_16M      0x00180000
-#define EFI_FVB2_ALIGNMENT_32M      0x00190000
-#define EFI_FVB2_ALIGNMENT_64M      0x001A0000
-#define EFI_FVB2_ALIGNMENT_128M     0x001B0000
-#define EFI_FVB2_ALIGNMENT_256M     0x001C0000
-#define EFI_FVB2_ALIGNMENT_512M     0x001D0000
-#define EFI_FVB2_ALIGNMENT_1G       0x001E0000
-#define EFI_FVB2_ALIGNMENT_2G       0x001F0000
-
-
-typedef struct {
-  ///
-  /// The number of sequential blocks which are of the same size.
-  ///
-  UINT32 NumBlocks;
-  ///
-  /// The size of the blocks.
-  ///
-  UINT32 Length;
-} EFI_FV_BLOCK_MAP_ENTRY;
-
-///
-/// Describes the features and layout of the firmware volume.
-///
-typedef struct {
-  ///
-  /// The first 16 bytes are reserved to allow for the reset vector of
-  /// processors whose reset vector is at address 0.
-  ///
-  UINT8                     ZeroVector[16];
-  ///
-  /// Declares the file system with which the firmware volume is formatted.
-  ///
-  EFI_GUID                  FileSystemGuid;
-  ///
-  /// Length in bytes of the complete firmware volume, including the header.
-  ///
-  UINT64                    FvLength;
-  ///
-  /// Set to EFI_FVH_SIGNATURE
-  ///
-  UINT32                    Signature;
-  ///
-  /// Declares capabilities and power-on defaults for the firmware volume.
-  ///
-  EFI_FVB_ATTRIBUTES_2      Attributes;
-  ///
-  /// Length in bytes of the complete firmware volume header.
-  ///
-  UINT16                    HeaderLength;
-  ///
-  /// A 16-bit checksum of the firmware volume header. A valid header sums to zero.
-  ///
-  UINT16                    Checksum;
-  ///
-  /// Offset, relative to the start of the header, of the extended header
-  /// (EFI_FIRMWARE_VOLUME_EXT_HEADER) or zero if there is no extended header.
-  ///
-  UINT16                    ExtHeaderOffset;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT8                     Reserved[1];
-  ///
-  /// Set to 2. Future versions of this specification may define new header fields and will
-  /// increment the Revision field accordingly.
-  ///
-  UINT8                     Revision;
-  ///
-  /// An array of run-length encoded FvBlockMapEntry structures. The array is
-  /// terminated with an entry of {0,0}.
-  ///
-  EFI_FV_BLOCK_MAP_ENTRY    BlockMap[1];
-} EFI_FIRMWARE_VOLUME_HEADER;
-
-#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
-
-///
-/// Firmware Volume Header Revision definition
-///
-#define EFI_FVH_REVISION  0x02
-
-///
-/// Extension header pointed by ExtHeaderOffset of volume header.
-///
-typedef struct {
-  ///
-  /// Firmware volume name.
-  ///
-  EFI_GUID  FvName;
-  ///
-  /// Size of the rest of the extension header, including this structure.
-  ///
-  UINT32    ExtHeaderSize;
-} EFI_FIRMWARE_VOLUME_EXT_HEADER;
-
-///
-/// Entry struture for describing FV extension header
-///
-typedef struct {
-  ///
-  /// Size of this header extension.
-  ///
-  UINT16    ExtEntrySize;
-  ///
-  /// Type of the header.
-  ///
-  UINT16    ExtEntryType;
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY;
-
-#define EFI_FV_EXT_TYPE_OEM_TYPE  0x01
-///
-/// This extension header provides a mapping between a GUID and an OEM file type.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr;
-  ///
-  /// A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31). If a bit
-  /// is '1', then the GUID entry exists in Types. If a bit is '0' then no GUID entry exists in Types.
-  ///
-  UINT32    TypeMask;
-  ///
-  /// An array of GUIDs, each GUID representing an OEM file type.
-  ///
-  /// EFI_GUID  Types[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_OEM_TYPE;
-
-#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
-
-///
-/// This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific
-/// GUID FormatType type which includes a length and a successive series of data bytes.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY     Hdr;
-  ///
-  /// Vendor-specific GUID.
-  ///
-  EFI_GUID                          FormatType;
-  ///
-  /// An arry of bytes of length Length.
-  ///
-  /// UINT8                             Data[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fsphob.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fsphob.h
deleted file mode 100644
index 7edef0d..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fsphob.h
+++ /dev/null
@@ -1,542 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_HOB_H__
-#define __PI_HOB_H__
-
-//
-// HobType of EFI_HOB_GENERIC_HEADER.
-//
-#define EFI_HOB_TYPE_MEMORY_ALLOCATION    0x0002
-#define EFI_HOB_TYPE_RESOURCE_DESCRIPTOR  0x0003
-#define EFI_HOB_TYPE_GUID_EXTENSION       0x0004
-#define EFI_HOB_TYPE_UNUSED               0xFFFE
-#define EFI_HOB_TYPE_END_OF_HOB_LIST      0xFFFF
-
-///
-/// Describes the format and size of the data inside the HOB.
-/// All HOBs must contain this generic HOB header.
-///
-typedef struct {
-  ///
-  /// Identifies the HOB data structure type.
-  ///
-  UINT16    HobType;
-  ///
-  /// The length in bytes of the HOB.
-  ///
-  UINT16    HobLength;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT32    Reserved;
-} EFI_HOB_GENERIC_HEADER;
-
-///
-/// Enumeration of memory types introduced in UEFI.
-///
-typedef enum {
-  ///
-  /// Not used.
-  ///
-  EfiReservedMemoryType,
-  ///
-  /// The code portions of a loaded application.
-  /// (Note that UEFI OS loaders are UEFI applications.)
-  ///
-  EfiLoaderCode,
-  ///
-  /// The data portions of a loaded application and the default data allocation
-  /// type used by an application to allocate pool memory.
-  ///
-  EfiLoaderData,
-  ///
-  /// The code portions of a loaded Boot Services Driver.
-  ///
-  EfiBootServicesCode,
-  ///
-  /// The data portions of a loaded Boot Serves Driver, and the default data
-  /// allocation type used by a Boot Services Driver to allocate pool memory.
-  ///
-  EfiBootServicesData,
-  ///
-  /// The code portions of a loaded Runtime Services Driver.
-  ///
-  EfiRuntimeServicesCode,
-  ///
-  /// The data portions of a loaded Runtime Services Driver and the default
-  /// data allocation type used by a Runtime Services Driver to allocate pool memory.
-  ///
-  EfiRuntimeServicesData,
-  ///
-  /// Free (unallocated) memory.
-  ///
-  EfiConventionalMemory,
-  ///
-  /// Memory in which errors have been detected.
-  ///
-  EfiUnusableMemory,
-  ///
-  /// Memory that holds the ACPI tables.
-  ///
-  EfiACPIReclaimMemory,
-  ///
-  /// Address space reserved for use by the firmware.
-  ///
-  EfiACPIMemoryNVS,
-  ///
-  /// Used by system firmware to request that a memory-mapped IO region
-  /// be mapped by the OS to a virtual address so it can be accessed by EFI runtime services.
-  ///
-  EfiMemoryMappedIO,
-  ///
-  /// System memory-mapped IO region that is used to translate memory
-  /// cycles to IO cycles by the processor.
-  ///
-  EfiMemoryMappedIOPortSpace,
-  ///
-  /// Address space reserved by the firmware for code that is part of the processor.
-  ///
-  EfiPalCode,
-  EfiMaxMemoryType
-} EFI_MEMORY_TYPE;
-
-///
-/// EFI_HOB_MEMORY_ALLOCATION_HEADER describes the
-/// various attributes of the logical memory allocation. The type field will be used for
-/// subsequent inclusion in the UEFI memory map.
-///
-typedef struct {
-  ///
-  /// A GUID that defines the memory allocation region's type and purpose, as well as
-  /// other fields within the memory allocation HOB. This GUID is used to define the
-  /// additional data within the HOB that may be present for the memory allocation HOB.
-  /// Type EFI_GUID is defined in InstallProtocolInterface() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_GUID              Name;
-
-  ///
-  /// The base address of memory allocated by this HOB. Type
-  /// EFI_PHYSICAL_ADDRESS is defined in AllocatePages() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_PHYSICAL_ADDRESS  MemoryBaseAddress;
-
-  ///
-  /// The length in bytes of memory allocated by this HOB.
-  ///
-  UINT64                MemoryLength;
-
-  ///
-  /// Defines the type of memory allocated by this HOB. The memory type definition
-  /// follows the EFI_MEMORY_TYPE definition. Type EFI_MEMORY_TYPE is defined
-  /// in AllocatePages() in the UEFI 2.0 specification.
-  ///
-  EFI_MEMORY_TYPE       MemoryType;
-
-  ///
-  /// Padding for Itanium processor family
-  ///
-  UINT8                 Reserved[4];
-} EFI_HOB_MEMORY_ALLOCATION_HEADER;
-
-///
-/// Describes all memory ranges used during the HOB producer
-/// phase that exist outside the HOB list. This HOB type
-/// describes how memory is used, not the physical attributes of memory.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_MEMORY_ALLOCATION.
-  ///
-  EFI_HOB_GENERIC_HEADER            Header;
-  ///
-  /// An instance of the EFI_HOB_MEMORY_ALLOCATION_HEADER that describes the
-  /// various attributes of the logical memory allocation.
-  ///
-  EFI_HOB_MEMORY_ALLOCATION_HEADER  AllocDescriptor;
-  //
-  // Additional data pertaining to the "Name" Guid memory
-  // may go here.
-  //
-} EFI_HOB_MEMORY_ALLOCATION;
-
-///
-/// The resource type.
-///
-typedef UINT32 EFI_RESOURCE_TYPE;
-
-//
-// Value of ResourceType in EFI_HOB_RESOURCE_DESCRIPTOR.
-//
-#define EFI_RESOURCE_SYSTEM_MEMORY          0x00000000
-#define EFI_RESOURCE_MEMORY_MAPPED_IO       0x00000001
-#define EFI_RESOURCE_IO                     0x00000002
-#define EFI_RESOURCE_FIRMWARE_DEVICE        0x00000003
-#define EFI_RESOURCE_MEMORY_MAPPED_IO_PORT  0x00000004
-#define EFI_RESOURCE_MEMORY_RESERVED        0x00000005
-#define EFI_RESOURCE_IO_RESERVED            0x00000006
-#define EFI_RESOURCE_MAX_MEMORY_TYPE        0x00000007
-
-///
-/// A type of recount attribute type.
-///
-typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
-
-//
-// These types can be ORed together as needed.
-//
-// The first three enumerations describe settings
-//
-#define EFI_RESOURCE_ATTRIBUTE_PRESENT              0x00000001
-#define EFI_RESOURCE_ATTRIBUTE_INITIALIZED          0x00000002
-#define EFI_RESOURCE_ATTRIBUTE_TESTED               0x00000004
-//
-// The rest of the settings describe capabilities
-//
-#define EFI_RESOURCE_ATTRIBUTE_SINGLE_BIT_ECC           0x00000008
-#define EFI_RESOURCE_ATTRIBUTE_MULTIPLE_BIT_ECC         0x00000010
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_1           0x00000020
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_2           0x00000040
-#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED           0x00000080
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED          0x00000100
-#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED      0x00000200
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE              0x00000400
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE        0x00000800
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE  0x00001000
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE     0x00002000
-#define EFI_RESOURCE_ATTRIBUTE_16_BIT_IO                0x00004000
-#define EFI_RESOURCE_ATTRIBUTE_32_BIT_IO                0x00008000
-#define EFI_RESOURCE_ATTRIBUTE_64_BIT_IO                0x00010000
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHED_EXPORTED        0x00020000
-
-///
-/// Describes the resource properties of all fixed,
-/// nonrelocatable resource ranges found on the processor
-/// host bus during the HOB producer phase.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_RESOURCE_DESCRIPTOR.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID representing the owner of the resource. This GUID is used by HOB
-  /// consumer phase components to correlate device ownership of a resource.
-  ///
-  EFI_GUID                    Owner;
-  ///
-  /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
-  ///
-  EFI_RESOURCE_TYPE           ResourceType;
-  ///
-  /// Resource attributes as defined by EFI_RESOURCE_ATTRIBUTE_TYPE.
-  ///
-  EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
-  ///
-  /// The physical start address of the resource region.
-  ///
-  EFI_PHYSICAL_ADDRESS        PhysicalStart;
-  ///
-  /// The number of bytes of the resource region.
-  ///
-  UINT64                      ResourceLength;
-} EFI_HOB_RESOURCE_DESCRIPTOR;
-
-///
-/// Allows writers of executable content in the HOB producer phase to
-/// maintain and manage HOBs with specific GUID.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_GUID_EXTENSION.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID that defines the contents of this HOB.
-  ///
-  EFI_GUID                    Name;
-  //
-  // Guid specific data goes here
-  //
-} EFI_HOB_GUID_TYPE;
-
-///
-/// Union of all the possible HOB Types.
-///
-typedef union {
-  EFI_HOB_GENERIC_HEADER              *Header;
-  EFI_HOB_MEMORY_ALLOCATION           *MemoryAllocation;
-  EFI_HOB_RESOURCE_DESCRIPTOR         *ResourceDescriptor;
-  EFI_HOB_GUID_TYPE                   *Guid;
-  UINT8                               *Raw;
-} EFI_PEI_HOB_POINTERS;
-
-
-/**
-  Returns the type of a HOB.
-
-  This macro returns the HobType field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobType.
-
-**/
-#define GET_HOB_TYPE(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobType)
-
-/**
-  Returns the length, in bytes, of a HOB.
-
-  This macro returns the HobLength field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobLength.
-
-**/
-#define GET_HOB_LENGTH(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobLength)
-
-/**
-  Returns a pointer to the next HOB in the HOB list.
-
-  This macro returns a pointer to HOB that follows the
-  HOB specified by HobStart in the HOB List.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return A pointer to the next HOB in the HOB list.
-
-**/
-#define GET_NEXT_HOB(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + GET_HOB_LENGTH (HobStart))
-
-/**
-  Determines if a HOB is the last HOB in the HOB list.
-
-  This macro determine if the HOB specified by HobStart is the
-  last HOB in the HOB list.  If HobStart is last HOB in the HOB list,
-  then TRUE is returned.  Otherwise, FALSE is returned.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @retval TRUE       The HOB specified by HobStart is the last HOB in the HOB list.
-  @retval FALSE      The HOB specified by HobStart is not the last HOB in the HOB list.
-
-**/
-#define END_OF_HOB_LIST(HobStart)  (GET_HOB_TYPE (HobStart) == (UINT16)EFI_HOB_TYPE_END_OF_HOB_LIST)
-
-/**
-  Returns a pointer to data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns a pointer to the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  A pointer to the data buffer in a HOB.
-
-**/
-#define GET_GUID_HOB_DATA(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the size of the data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns the size, in bytes, of the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  The size of the data buffer.
-**/
-#define GET_GUID_HOB_DATA_SIZE(HobStart) \
-  (UINT16)(GET_HOB_LENGTH (HobStart) - sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the pointer to the HOB list.
-
-  This function returns the pointer to first HOB in the list.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @return The pointer to the HOB list.
-
-**/
-VOID *
-EFIAPI
-GetHobList (
-  VOID
-  );
-
-/**
-  Returns the next instance of a HOB type from the starting HOB.
-
-  This function searches the first instance of a HOB type from the starting HOB pointer.
-  If there does not exist such HOB type from the starting HOB pointer, it will return NULL.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If HobStart is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-  @param  HobStart      The starting HOB pointer to search from.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextHob (
-  UINT16                 Type,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of a HOB type among the whole HOB list.
-
-  This function searches the first instance of a HOB type among the whole HOB list.
-  If there does not exist such HOB type in the HOB list, it will return NULL.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetFirstHob (
-  UINT16                 Type
-  );
-
-/**
-  Returns the next instance of the matched GUID HOB from the starting HOB.
-
-  This function searches the first instance of a HOB from the starting HOB pointer.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If Guid is NULL, then ASSERT().
-  If HobStart is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-  @param  HobStart      A pointer to a Guid.
-
-  @return The next instance of the matched GUID HOB from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextGuidHob (
-  CONST EFI_GUID         *Guid,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of the matched GUID HOB among the whole HOB list.
-
-  This function searches the first instance of a HOB among the whole HOB list.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-  If Guid is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-
-  @return The first instance of the matched GUID HOB among the whole HOB list.
-
-**/
-VOID *
-EFIAPI
-GetFirstGuidHob (
-  CONST EFI_GUID         *Guid
-  );
-
-/**
-  Compares two GUIDs.
-
-  This function compares Guid1 to Guid2.  If the GUIDs are identical then TRUE is returned.
-  If there are any bit differences in the two GUIDs, then FALSE is returned.
-
-  If Guid1 is NULL, then ASSERT().
-  If Guid2 is NULL, then ASSERT().
-
-  @param  Guid1       A pointer to a 128 bit GUID.
-  @param  Guid2       A pointer to a 128 bit GUID.
-
-  @retval TRUE        Guid1 and Guid2 are identical.
-  @retval FALSE       Guid1 and Guid2 are not identical.
-
-**/
-BOOLEAN
-EFIAPI
-CompareGuid (
-  CONST EFI_GUID  *Guid1,
-  CONST EFI_GUID  *Guid2
-  );
-
-/**
-  Reads a 64-bit value from memory that may be unaligned.
-
-  This function returns the 64-bit value pointed to by Buffer. The function
-  guarantees that the read operation does not produce an alignment fault.
-
-  If the Buffer is NULL, then ASSERT().
-
-  @param  Buffer  Pointer to a 64-bit value that may be unaligned.
-
-  @return The 64-bit value read from Buffer.
-
-**/
-UINT64
-EFIAPI
-ReadUnaligned64 (
-  CONST UINT64              *Buffer
-  );
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fspinfoheader.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fspinfoheader.h
deleted file mode 100644
index b277bcd..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fspinfoheader.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_INFO_HEADER_H_
-#define _FSP_INFO_HEADER_H_
-
-#pragma pack(1)
-
-typedef struct  {
-
-  UINT32  Signature;       // Off 0x94
-  UINT32  HeaderLength;
-  UINT8   Reserved1[3];
-  UINT8   HeaderRevision;
-  UINT32  ImageRevision;
-
-  CHAR8   ImageId[8];      // Off 0xA4
-  UINT32  ImageSize;
-  UINT32  ImageBase;
-
-  UINT32  ImageAttribute;  // Off 0xB4
-  UINT32  CfgRegionOffset;
-  UINT32  CfgRegionSize;
-  UINT32  ApiEntryNum;
-
-  UINT32  NemInitEntry;    // Off 0xC4
-  UINT32  FspInitEntry;
-  UINT32  NotifyPhaseEntry;
-  UINT32  Reserved2;
-
-} FSP_INFO_HEADER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fspplatform.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fspplatform.h
deleted file mode 100644
index 81f7b66..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fspplatform.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_PLATFORM_H_
-#define _FSP_PLATFORM_H_
-
-#include "fsptypes.h"
-#include "fspapi.h"
-#include "azalia.h"
-
-#pragma pack(1)
-
-typedef struct {
-  FSP_INIT_RT_COMMON_BUFFER   Common;
-} FSP_INIT_RT_BUFFER;
-
-#pragma pack()
-
-//
-// Function prototypes for board_fsp.c
-//
-void
-GetFspReservedMemoryFromGuid (
-  uint32_t         *FspMemoryBase,
-  uint32_t         *FspMemoryLength,
-  EFI_GUID          FspReservedMemoryGuid
-  );
-
-void
-GetFspNVStorageMemory (
-  void         **FspNVStorageHob,
-  uint16_t     *DataSize
-  );
-
-void
-GetTempRamStack (
-  void         **TempRamStackPtr,
-  uint16_t     *DataSize
-  );
-
-void
-GetHighMemorySize (
-  uint64_t         *HighMemoryLength
-  );
-
-void
-GetLowMemorySize (
-  uint32_t         *LowMemoryLength
-  );
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/include/fsptypes.h b/src/vendorcode/intel/fsp1_0/baytrail/include/fsptypes.h
deleted file mode 100644
index 4a313ad..0000000
--- a/src/vendorcode/intel/fsp1_0/baytrail/include/fsptypes.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-/** \file  fsptypes.h
- *
- *
- */
-
-#ifndef __FSP_TYPES_H__
-#define __FSP_TYPES_H__
-
-///
-/// 8-byte unsigned value.
-///
-typedef unsigned long long  UINT64;
-///
-/// 8-byte signed value.
-///
-typedef long long           INT64;
-///
-/// 4-byte unsigned value.
-///
-typedef unsigned int        UINT32;
-///
-/// 4-byte signed value.
-///
-typedef int                 INT32;
-///
-/// 2-byte unsigned value.
-///
-typedef unsigned short      UINT16;
-///
-/// 2-byte Character.  Unless otherwise specified all strings are stored in the
-/// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.
-///
-typedef unsigned short      CHAR16;
-///
-/// 2-byte signed value.
-///
-typedef short               INT16;
-///
-/// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other
-/// values are undefined.
-///
-typedef unsigned char       BOOLEAN;
-///
-/// 1-byte unsigned value.
-///
-typedef unsigned char       UINT8;
-///
-/// 1-byte Character
-///
-typedef char                CHAR8;
-///
-/// 1-byte signed value
-///
-typedef char                INT8;
-
-typedef void                VOID;
-
-typedef UINT64              EFI_PHYSICAL_ADDRESS;
-
-typedef struct {
-  UINT32  Data1;
-  UINT16  Data2;
-  UINT16  Data3;
-  UINT8   Data4[8];
-} EFI_GUID;
-
-#define CONST     const
-#define STATIC    static
-
-#define TRUE  ((BOOLEAN)(1==1))
-#define FALSE ((BOOLEAN)(0==1))
-
-#define FSPAPI __attribute__((cdecl))
-#define EFIAPI __attribute__((cdecl))
-
-#define ASSERT(Expression)      \
-  do {                          \
-    if (!(Expression)) {        \
-      for (;;);                 \
-    }                           \
-  } while (FALSE)
-
-typedef UINT32 FSP_STATUS;
-typedef UINT32 EFI_STATUS;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/baytrail/srx/board_fsp.c b/src/vendorcode/intel/fsp1_0/baytrail/srx/board_fsp.c
index 2cb3492..3e0c916 100644
--- a/src/vendorcode/intel/fsp1_0/baytrail/srx/board_fsp.c
+++ b/src/vendorcode/intel/fsp1_0/baytrail/srx/board_fsp.c
@@ -36,6 +36,11 @@ are permitted provided that the following conditions are met:
  *
  **********************************************************************/
 #include "fsp.h"
+#include <string.h>
+
+#include "fsptypes.h"
+#include "fsphob.h"
+
 
 void
 GetLowMemorySize (
@@ -49,12 +54,12 @@ GetLowMemorySize (
   //
   // Get the HOB list for processing
   //
-  Hob.Raw = GetHobList();
+  Hob.Raw = (void *)GetHobList();
 
   //
   // Collect memory ranges
   //
-  while (!END_OF_HOB_LIST (Hob)) {
+  while (!END_OF_HOB_LIST(Hob)) {
     if (Hob.Header->HobType == EFI_HOB_TYPE_RESOURCE_DESCRIPTOR) {
       if (Hob.ResourceDescriptor->ResourceType == EFI_RESOURCE_SYSTEM_MEMORY) {
         //
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsp.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsp.h
deleted file mode 100644
index 22d2ee9..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsp.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_H__
-#define __FSP_H__
-
-#include "fsptypes.h"
-#include "fspfv.h"
-#include "fspffs.h"
-#include "fspapi.h"
-#include "fsphob.h"
-#include "fspplatform.h"
-#include "fspinfoheader.h"
-#include "fspbootmode.h"
-#include "fspvpd.h"
-#include "fspsupport.h"
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspapi.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspapi.h
deleted file mode 100644
index 0211e26..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspapi.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_API_H__
-#define __FSP_API_H__
-
-///
-/// FSP Init continuation function prototype.
-/// Control will be returned to this callback function after FspInit API call.
-///
-typedef VOID       (FSPAPI *CONTINUATION_PROC)  (EFI_STATUS Status,  VOID *HobListPtr);
-
-#pragma pack(1)
-
-typedef struct {
-  ///
-  /// Non-volatile storage buffer pointer.
-  ///
-  VOID               *NvsBufferPtr;
-  ///
-  /// Runtime buffer pointer
-  ///
-  VOID               *RtBufferPtr;
-  ///
-  /// Continuation function address
-  ///
-  CONTINUATION_PROC   ContinuationFunc;
-} FSP_INIT_PARAMS;
-
-typedef struct {
-  ///
-  /// Stack top pointer used by the bootloader.
-  /// The new stack frame will be set up at this location after FspInit API call.
-  ///
-  UINT32             *StackTop;
-  ///
-  /// Current system boot mode.
-  ///
-  UINT32              BootMode;
-  ///
-  /// User platform configuraiton data region pointer.
-  ///
-  VOID               *UpdDataRgnPtr;
-  ///
-  /// Reserved
-  ///
-  UINT32              Reserved[7];
-} FSP_INIT_RT_COMMON_BUFFER;
-
-typedef enum {
-  ///
-  /// Notification code for post PCI enuermation
-  ///
-  EnumInitPhaseAfterPciEnumeration = 0x20,
-  ///
-  /// Notification code before transfering control to the payload
-  ///
-  EnumInitPhaseReadyToBoot         = 0x40
-} FSP_INIT_PHASE;
-
-typedef struct {
-  ///
-  /// Notification phase used for NotifyPhase API
-  ///
-  FSP_INIT_PHASE     Phase;
-} NOTIFY_PHASE_PARAMS;
-
-#pragma pack()
-
-///
-/// FspInit API function prototype
-///
-typedef FSP_STATUS (FSPAPI *FSP_FSP_INIT)       (FSP_INIT_PARAMS     *FspInitParamPtr);
-
-///
-/// NotifyPhase API function prototype
-///
-typedef FSP_STATUS (FSPAPI *FSP_NOTFY_PHASE)    (NOTIFY_PHASE_PARAMS *NotifyPhaseParamPtr);
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspbootmode.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspbootmode.h
deleted file mode 100644
index f3c121b..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspbootmode.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_BOOTMODE_H__
-#define __FSP_BOOTMODE_H__
-
-///
-/// EFI boot mode
-///
-typedef UINT32  EFI_BOOT_MODE;
-
-//
-// 0x21 - 0xf..f are reserved.
-//
-#define BOOT_WITH_FULL_CONFIGURATION                  0x00
-#define BOOT_ON_S3_RESUME                             0x11
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspffs.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspffs.h
deleted file mode 100644
index 9c4e669..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspffs.h
+++ /dev/null
@@ -1,506 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_FFS_H__
-#define __FSP_FFS_H__
-
-#pragma pack(1)
-///
-/// Used to verify the integrity of the file.
-///
-typedef union {
-  struct {
-    ///
-    /// The IntegrityCheck.Checksum.Header field is an 8-bit checksum of the file
-    /// header. The State and IntegrityCheck.Checksum.File fields are assumed
-    /// to be zero and the checksum is calculated such that the entire header sums to zero.
-    ///
-    UINT8   Header;
-    ///
-    /// If the FFS_ATTRIB_CHECKSUM (see definition below) bit of the Attributes
-    /// field is set to one, the IntegrityCheck.Checksum.File field is an 8-bit
-    /// checksum of the file data.
-    /// If the FFS_ATTRIB_CHECKSUM bit of the Attributes field is cleared to zero,
-    /// the IntegrityCheck.Checksum.File field must be initialized with a value of
-    /// 0xAA. The IntegrityCheck.Checksum.File field is valid any time the
-    /// EFI_FILE_DATA_VALID bit is set in the State field.
-    ///
-    UINT8   File;
-  } Checksum;
-  ///
-  /// This is the full 16 bits of the IntegrityCheck field.
-  ///
-  UINT16    Checksum16;
-} EFI_FFS_INTEGRITY_CHECK;
-
-///
-/// FFS_FIXED_CHECKSUM is the checksum value used when the
-/// FFS_ATTRIB_CHECKSUM attribute bit is clear.
-///
-#define FFS_FIXED_CHECKSUM  0xAA
-
-typedef UINT8 EFI_FV_FILETYPE;
-typedef UINT8 EFI_FFS_FILE_ATTRIBUTES;
-typedef UINT8 EFI_FFS_FILE_STATE;
-
-///
-/// File Types Definitions
-///
-#define EFI_FV_FILETYPE_ALL                   0x00
-#define EFI_FV_FILETYPE_RAW                   0x01
-#define EFI_FV_FILETYPE_FREEFORM              0x02
-#define EFI_FV_FILETYPE_SECURITY_CORE         0x03
-#define EFI_FV_FILETYPE_PEI_CORE              0x04
-#define EFI_FV_FILETYPE_DXE_CORE              0x05
-#define EFI_FV_FILETYPE_PEIM                  0x06
-#define EFI_FV_FILETYPE_DRIVER                0x07
-#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08
-#define EFI_FV_FILETYPE_APPLICATION           0x09
-#define EFI_FV_FILETYPE_SMM                   0x0A
-#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
-#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
-#define EFI_FV_FILETYPE_SMM_CORE              0x0D
-#define EFI_FV_FILETYPE_OEM_MIN               0xc0
-#define EFI_FV_FILETYPE_OEM_MAX               0xdf
-#define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
-#define EFI_FV_FILETYPE_DEBUG_MAX             0xef
-#define EFI_FV_FILETYPE_FFS_MIN               0xf0
-#define EFI_FV_FILETYPE_FFS_MAX               0xff
-#define EFI_FV_FILETYPE_FFS_PAD               0xf0
-
-///
-/// FFS File Attributes.
-///
-#define FFS_ATTRIB_LARGE_FILE         0x01
-#define FFS_ATTRIB_FIXED              0x04
-#define FFS_ATTRIB_DATA_ALIGNMENT     0x38
-#define FFS_ATTRIB_CHECKSUM           0x40
-
-///
-/// FFS File State Bits.
-///
-#define EFI_FILE_HEADER_CONSTRUCTION  0x01
-#define EFI_FILE_HEADER_VALID         0x02
-#define EFI_FILE_DATA_VALID           0x04
-#define EFI_FILE_MARKED_FOR_UPDATE    0x08
-#define EFI_FILE_DELETED              0x10
-#define EFI_FILE_HEADER_INVALID       0x20
-
-
-///
-/// Each file begins with the header that describe the
-/// contents and state of the files.
-///
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file.
-  ///
-  EFI_GUID                Name;
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK IntegrityCheck;
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE         Type;
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES Attributes;
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  ///
-  UINT8                   Size[3];
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE      State;
-} EFI_FFS_FILE_HEADER;
-
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file. There may be only
-  /// one instance of a file with the file name GUID of Name in any given firmware
-  /// volume, except if the file type is EFI_FV_FILETYPE_FFS_PAD.
-  ///
-  EFI_GUID                  Name;
-
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK   IntegrityCheck;
-
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE           Type;
-
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES   Attributes;
-
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  /// The length of the file data is either (Size - sizeof(EFI_FFS_FILE_HEADER)). This calculation means a
-  /// zero-length file has a Size of 24 bytes, which is sizeof(EFI_FFS_FILE_HEADER).
-  /// Size is not required to be a multiple of 8 bytes. Given a file F, the next file header is
-  /// located at the next 8-byte aligned firmware volume offset following the last byte of the file F.
-  ///
-  UINT8                     Size[3];
-
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE        State;
-
-  ///
-  /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
-  /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
-  ///
-  UINT32                    ExtendedSize;
-} EFI_FFS_FILE_HEADER2;
-
-#define IS_FFS_FILE2(FfsFileHeaderPtr) \
-    (((((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Attributes) & FFS_ATTRIB_LARGE_FILE) == FFS_ATTRIB_LARGE_FILE)
-
-#define FFS_FILE_SIZE(FfsFileHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Size) & 0x00ffffff))
-
-#define FFS_FILE2_SIZE(FfsFileHeaderPtr) \
-    (((EFI_FFS_FILE_HEADER2 *) (UINTN) FfsFileHeaderPtr)->ExtendedSize)
-
-typedef UINT8 EFI_SECTION_TYPE;
-
-///
-/// Pseudo type. It is used as a wild card when retrieving sections.
-///  The section type EFI_SECTION_ALL matches all section types.
-///
-#define EFI_SECTION_ALL                   0x00
-
-///
-/// Encapsulation section Type values.
-///
-#define EFI_SECTION_COMPRESSION           0x01
-
-#define EFI_SECTION_GUID_DEFINED          0x02
-
-#define EFI_SECTION_DISPOSABLE            0x03
-
-///
-/// Leaf section Type values.
-///
-#define EFI_SECTION_PE32                  0x10
-#define EFI_SECTION_PIC                   0x11
-#define EFI_SECTION_TE                    0x12
-#define EFI_SECTION_DXE_DEPEX             0x13
-#define EFI_SECTION_VERSION               0x14
-#define EFI_SECTION_USER_INTERFACE        0x15
-#define EFI_SECTION_COMPATIBILITY16       0x16
-#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17
-#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18
-#define EFI_SECTION_RAW                   0x19
-#define EFI_SECTION_PEI_DEPEX             0x1B
-#define EFI_SECTION_SMM_DEPEX             0x1C
-
-///
-/// Common section header.
-///
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-  EFI_SECTION_TYPE  Type;
-  ///
-  /// Declares the section type.
-  ///
-} EFI_COMMON_SECTION_HEADER;
-
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-
-  EFI_SECTION_TYPE  Type;
-
-  ///
-  /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
-  /// Size is not equal to 0xFFFFFF, then this field does not exist.
-  ///
-  UINT32            ExtendedSize;
-} EFI_COMMON_SECTION_HEADER2;
-
-///
-/// Leaf section type that contains an
-/// IA-32 16-bit executable image.
-///
-typedef EFI_COMMON_SECTION_HEADER  EFI_COMPATIBILITY16_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_COMPATIBILITY16_SECTION2;
-
-///
-/// CompressionType of EFI_COMPRESSION_SECTION.
-///
-#define EFI_NOT_COMPRESSED        0x00
-#define EFI_STANDARD_COMPRESSION  0x01
-///
-/// An encapsulation section type in which the
-/// section data is compressed.
-///
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                      UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                       CompressionType;
-} EFI_COMPRESSION_SECTION;
-
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                        UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                         CompressionType;
-} EFI_COMPRESSION_SECTION2;
-
-///
-/// An encapsulation section type in which the section data is disposable.
-/// A disposable section is an encapsulation section in which the section data may be disposed of during
-/// the process of creating or updating a firmware image without significant impact on the usefulness of
-/// the file. The Type field in the section header is set to EFI_SECTION_DISPOSABLE. This
-/// allows optional or descriptive data to be included with the firmware file which can be removed in
-/// order to conserve space. The contents of this section are implementation specific, but might contain
-/// debug data or detailed integration instructions.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DISPOSABLE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DISPOSABLE_SECTION2;
-
-///
-/// The leaf section which could be used to determine the dispatch order of DXEs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DXE_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DXE_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a PI FV.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
-
-///
-/// The leaf section which contains a single GUID.
-///
-typedef struct {
-  ///
-  /// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                    SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                      SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
-
-///
-/// Attributes of EFI_GUID_DEFINED_SECTION.
-///
-#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED  0x01
-#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID    0x02
-///
-/// The leaf section which is encapsulation defined by specific GUID.
-///
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                    SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                      DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                      Attributes;
-} EFI_GUID_DEFINED_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                      SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                        DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                        Attributes;
-} EFI_GUID_DEFINED_SECTION2;
-
-///
-/// The leaf section which contains PE32+ image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PE32_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PE32_SECTION2;
-
-///
-/// The leaf section used to determine the dispatch order of PEIMs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PEI_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PEI_DEPEX_SECTION2;
-
-///
-/// A leaf section type that contains a position-independent-code (PIC) image.
-/// A PIC image section is a leaf section that contains a position-independent-code (PIC) image.
-/// In addition to normal PE32+ images that contain relocation information, PEIM executables may be
-/// PIC and are referred to as PIC images. A PIC image is the same as a PE32+ image except that all
-/// relocation information has been stripped from the image and the image can be moved and will
-/// execute correctly without performing any relocation or other fix-ups. EFI_PIC_SECTION2 must
-/// be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PIC_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PIC_SECTION2;
-
-///
-/// The leaf section which constains the position-independent-code image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_TE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_TE_SECTION2;
-
-///
-/// The leaf section which contains an array of zero or more bytes.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_RAW_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_RAW_SECTION2;
-
-///
-/// The SMM dependency expression section is a leaf section that contains a dependency expression that
-/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
-/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
-/// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
-/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
-/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a unicode string that
-/// is human readable file name.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      FileNameString[1];
-} EFI_USER_INTERFACE_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  CHAR16                        FileNameString[1];
-} EFI_USER_INTERFACE_SECTION2;
-
-///
-/// The leaf section which contains a numeric build number and
-/// an optional unicode string that represents the file revision.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  UINT16                      BuildNumber;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      VersionString[1];
-} EFI_VERSION_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// A UINT16 that represents a particular build. Subsequent builds have monotonically
-  /// increasing build numbers relative to earlier builds.
-  ///
-  UINT16                        BuildNumber;
-  CHAR16                        VersionString[1];
-} EFI_VERSION_SECTION2;
-
-#define IS_SECTION2(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff) == 0x00ffffff)
-
-#define SECTION_SIZE(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff))
-
-#define SECTION2_SIZE(SectionHeaderPtr) \
-    (((EFI_COMMON_SECTION_HEADER2 *) (UINTN) SectionHeaderPtr)->ExtendedSize)
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspfv.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspfv.h
deleted file mode 100644
index 5696a78..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspfv.h
+++ /dev/null
@@ -1,247 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_FV___
-#define __FSP_FV___
-
-///
-/// EFI_FV_FILE_ATTRIBUTES
-///
-typedef UINT32  EFI_FV_FILE_ATTRIBUTES;
-
-//
-// Value of EFI_FV_FILE_ATTRIBUTES.
-//
-#define EFI_FV_FILE_ATTRIB_ALIGNMENT      0x0000001F
-#define EFI_FV_FILE_ATTRIB_FIXED          0x00000100
-#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED  0x00000200
-
-///
-/// type of EFI FVB attribute
-///
-typedef UINT32  EFI_FVB_ATTRIBUTES_2;
-
-//
-// Attributes bit definitions
-//
-#define EFI_FVB2_READ_DISABLED_CAP  0x00000001
-#define EFI_FVB2_READ_ENABLED_CAP   0x00000002
-#define EFI_FVB2_READ_STATUS        0x00000004
-#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
-#define EFI_FVB2_WRITE_ENABLED_CAP  0x00000010
-#define EFI_FVB2_WRITE_STATUS       0x00000020
-#define EFI_FVB2_LOCK_CAP           0x00000040
-#define EFI_FVB2_LOCK_STATUS        0x00000080
-#define EFI_FVB2_STICKY_WRITE       0x00000200
-#define EFI_FVB2_MEMORY_MAPPED      0x00000400
-#define EFI_FVB2_ERASE_POLARITY     0x00000800
-#define EFI_FVB2_READ_LOCK_CAP      0x00001000
-#define EFI_FVB2_READ_LOCK_STATUS   0x00002000
-#define EFI_FVB2_WRITE_LOCK_CAP     0x00004000
-#define EFI_FVB2_WRITE_LOCK_STATUS  0x00008000
-#define EFI_FVB2_ALIGNMENT          0x001F0000
-#define EFI_FVB2_ALIGNMENT_1        0x00000000
-#define EFI_FVB2_ALIGNMENT_2        0x00010000
-#define EFI_FVB2_ALIGNMENT_4        0x00020000
-#define EFI_FVB2_ALIGNMENT_8        0x00030000
-#define EFI_FVB2_ALIGNMENT_16       0x00040000
-#define EFI_FVB2_ALIGNMENT_32       0x00050000
-#define EFI_FVB2_ALIGNMENT_64       0x00060000
-#define EFI_FVB2_ALIGNMENT_128      0x00070000
-#define EFI_FVB2_ALIGNMENT_256      0x00080000
-#define EFI_FVB2_ALIGNMENT_512      0x00090000
-#define EFI_FVB2_ALIGNMENT_1K       0x000A0000
-#define EFI_FVB2_ALIGNMENT_2K       0x000B0000
-#define EFI_FVB2_ALIGNMENT_4K       0x000C0000
-#define EFI_FVB2_ALIGNMENT_8K       0x000D0000
-#define EFI_FVB2_ALIGNMENT_16K      0x000E0000
-#define EFI_FVB2_ALIGNMENT_32K      0x000F0000
-#define EFI_FVB2_ALIGNMENT_64K      0x00100000
-#define EFI_FVB2_ALIGNMENT_128K     0x00110000
-#define EFI_FVB2_ALIGNMENT_256K     0x00120000
-#define EFI_FVB2_ALIGNMENT_512K     0x00130000
-#define EFI_FVB2_ALIGNMENT_1M       0x00140000
-#define EFI_FVB2_ALIGNMENT_2M       0x00150000
-#define EFI_FVB2_ALIGNMENT_4M       0x00160000
-#define EFI_FVB2_ALIGNMENT_8M       0x00170000
-#define EFI_FVB2_ALIGNMENT_16M      0x00180000
-#define EFI_FVB2_ALIGNMENT_32M      0x00190000
-#define EFI_FVB2_ALIGNMENT_64M      0x001A0000
-#define EFI_FVB2_ALIGNMENT_128M     0x001B0000
-#define EFI_FVB2_ALIGNMENT_256M     0x001C0000
-#define EFI_FVB2_ALIGNMENT_512M     0x001D0000
-#define EFI_FVB2_ALIGNMENT_1G       0x001E0000
-#define EFI_FVB2_ALIGNMENT_2G       0x001F0000
-
-
-typedef struct {
-  ///
-  /// The number of sequential blocks which are of the same size.
-  ///
-  UINT32 NumBlocks;
-  ///
-  /// The size of the blocks.
-  ///
-  UINT32 Length;
-} EFI_FV_BLOCK_MAP_ENTRY;
-
-///
-/// Describes the features and layout of the firmware volume.
-///
-typedef struct {
-  ///
-  /// The first 16 bytes are reserved to allow for the reset vector of
-  /// processors whose reset vector is at address 0.
-  ///
-  UINT8                     ZeroVector[16];
-  ///
-  /// Declares the file system with which the firmware volume is formatted.
-  ///
-  EFI_GUID                  FileSystemGuid;
-  ///
-  /// Length in bytes of the complete firmware volume, including the header.
-  ///
-  UINT64                    FvLength;
-  ///
-  /// Set to EFI_FVH_SIGNATURE
-  ///
-  UINT32                    Signature;
-  ///
-  /// Declares capabilities and power-on defaults for the firmware volume.
-  ///
-  EFI_FVB_ATTRIBUTES_2      Attributes;
-  ///
-  /// Length in bytes of the complete firmware volume header.
-  ///
-  UINT16                    HeaderLength;
-  ///
-  /// A 16-bit checksum of the firmware volume header. A valid header sums to zero.
-  ///
-  UINT16                    Checksum;
-  ///
-  /// Offset, relative to the start of the header, of the extended header
-  /// (EFI_FIRMWARE_VOLUME_EXT_HEADER) or zero if there is no extended header.
-  ///
-  UINT16                    ExtHeaderOffset;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT8                     Reserved[1];
-  ///
-  /// Set to 2. Future versions of this specification may define new header fields and will
-  /// increment the Revision field accordingly.
-  ///
-  UINT8                     Revision;
-  ///
-  /// An array of run-length encoded FvBlockMapEntry structures. The array is
-  /// terminated with an entry of {0,0}.
-  ///
-  EFI_FV_BLOCK_MAP_ENTRY    BlockMap[1];
-} EFI_FIRMWARE_VOLUME_HEADER;
-
-#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
-
-///
-/// Firmware Volume Header Revision definition
-///
-#define EFI_FVH_REVISION  0x02
-
-///
-/// Extension header pointed by ExtHeaderOffset of volume header.
-///
-typedef struct {
-  ///
-  /// Firmware volume name.
-  ///
-  EFI_GUID  FvName;
-  ///
-  /// Size of the rest of the extension header, including this structure.
-  ///
-  UINT32    ExtHeaderSize;
-} EFI_FIRMWARE_VOLUME_EXT_HEADER;
-
-///
-/// Entry struture for describing FV extension header
-///
-typedef struct {
-  ///
-  /// Size of this header extension.
-  ///
-  UINT16    ExtEntrySize;
-  ///
-  /// Type of the header.
-  ///
-  UINT16    ExtEntryType;
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY;
-
-#define EFI_FV_EXT_TYPE_OEM_TYPE  0x01
-///
-/// This extension header provides a mapping between a GUID and an OEM file type.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr;
-  ///
-  /// A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31). If a bit
-  /// is '1', then the GUID entry exists in Types. If a bit is '0' then no GUID entry exists in Types.
-  ///
-  UINT32    TypeMask;
-  ///
-  /// An array of GUIDs, each GUID representing an OEM file type.
-  ///
-  /// EFI_GUID  Types[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_OEM_TYPE;
-
-#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
-
-///
-/// This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific
-/// GUID FormatType type which includes a length and a successive series of data bytes.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY     Hdr;
-  ///
-  /// Vendor-specific GUID.
-  ///
-  EFI_GUID                          FormatType;
-  ///
-  /// An arry of bytes of length Length.
-  ///
-  /// UINT8                             Data[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsphob.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsphob.h
deleted file mode 100644
index 59e34ef..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsphob.h
+++ /dev/null
@@ -1,427 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_HOB_H__
-#define __FSP_HOB_H__
-
-//
-// HobType of EFI_HOB_GENERIC_HEADER.
-//
-#define EFI_HOB_TYPE_MEMORY_ALLOCATION    0x0002
-#define EFI_HOB_TYPE_RESOURCE_DESCRIPTOR  0x0003
-#define EFI_HOB_TYPE_GUID_EXTENSION       0x0004
-#define EFI_HOB_TYPE_UNUSED               0xFFFE
-#define EFI_HOB_TYPE_END_OF_HOB_LIST      0xFFFF
-
-///
-/// Describes the format and size of the data inside the HOB.
-/// All HOBs must contain this generic HOB header.
-///
-typedef struct {
-  ///
-  /// Identifies the HOB data structure type.
-  ///
-  UINT16    HobType;
-  ///
-  /// The length in bytes of the HOB.
-  ///
-  UINT16    HobLength;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT32    Reserved;
-} EFI_HOB_GENERIC_HEADER;
-
-///
-/// Enumeration of memory types introduced in UEFI.
-///
-typedef enum {
-  ///
-  /// Not used.
-  ///
-  EfiReservedMemoryType,
-  ///
-  /// The code portions of a loaded application.
-  /// (Note that UEFI OS loaders are UEFI applications.)
-  ///
-  EfiLoaderCode,
-  ///
-  /// The data portions of a loaded application and the default data allocation
-  /// type used by an application to allocate pool memory.
-  ///
-  EfiLoaderData,
-  ///
-  /// The code portions of a loaded Boot Services Driver.
-  ///
-  EfiBootServicesCode,
-  ///
-  /// The data portions of a loaded Boot Serves Driver, and the default data
-  /// allocation type used by a Boot Services Driver to allocate pool memory.
-  ///
-  EfiBootServicesData,
-  ///
-  /// The code portions of a loaded Runtime Services Driver.
-  ///
-  EfiRuntimeServicesCode,
-  ///
-  /// The data portions of a loaded Runtime Services Driver and the default
-  /// data allocation type used by a Runtime Services Driver to allocate pool memory.
-  ///
-  EfiRuntimeServicesData,
-  ///
-  /// Free (unallocated) memory.
-  ///
-  EfiConventionalMemory,
-  ///
-  /// Memory in which errors have been detected.
-  ///
-  EfiUnusableMemory,
-  ///
-  /// Memory that holds the ACPI tables.
-  ///
-  EfiACPIReclaimMemory,
-  ///
-  /// Address space reserved for use by the firmware.
-  ///
-  EfiACPIMemoryNVS,
-  ///
-  /// Used by system firmware to request that a memory-mapped IO region
-  /// be mapped by the OS to a virtual address so it can be accessed by EFI runtime services.
-  ///
-  EfiMemoryMappedIO,
-  ///
-  /// System memory-mapped IO region that is used to translate memory
-  /// cycles to IO cycles by the processor.
-  ///
-  EfiMemoryMappedIOPortSpace,
-  ///
-  /// Address space reserved by the firmware for code that is part of the processor.
-  ///
-  EfiPalCode,
-  EfiMaxMemoryType
-} EFI_MEMORY_TYPE;
-
-///
-/// EFI_HOB_MEMORY_ALLOCATION_HEADER describes the
-/// various attributes of the logical memory allocation. The type field will be used for
-/// subsequent inclusion in the UEFI memory map.
-///
-typedef struct {
-  ///
-  /// A GUID that defines the memory allocation region's type and purpose, as well as
-  /// other fields within the memory allocation HOB. This GUID is used to define the
-  /// additional data within the HOB that may be present for the memory allocation HOB.
-  /// Type EFI_GUID is defined in InstallProtocolInterface() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_GUID              Name;
-
-  ///
-  /// The base address of memory allocated by this HOB. Type
-  /// EFI_PHYSICAL_ADDRESS is defined in AllocatePages() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_PHYSICAL_ADDRESS  MemoryBaseAddress;
-
-  ///
-  /// The length in bytes of memory allocated by this HOB.
-  ///
-  UINT64                MemoryLength;
-
-  ///
-  /// Defines the type of memory allocated by this HOB. The memory type definition
-  /// follows the EFI_MEMORY_TYPE definition. Type EFI_MEMORY_TYPE is defined
-  /// in AllocatePages() in the UEFI 2.0 specification.
-  ///
-  EFI_MEMORY_TYPE       MemoryType;
-
-  ///
-  /// Padding for Itanium processor family
-  ///
-  UINT8                 Reserved[4];
-} EFI_HOB_MEMORY_ALLOCATION_HEADER;
-
-///
-/// Describes all memory ranges used during the HOB producer
-/// phase that exist outside the HOB list. This HOB type
-/// describes how memory is used, not the physical attributes of memory.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_MEMORY_ALLOCATION.
-  ///
-  EFI_HOB_GENERIC_HEADER            Header;
-  ///
-  /// An instance of the EFI_HOB_MEMORY_ALLOCATION_HEADER that describes the
-  /// various attributes of the logical memory allocation.
-  ///
-  EFI_HOB_MEMORY_ALLOCATION_HEADER  AllocDescriptor;
-  //
-  // Additional data pertaining to the "Name" Guid memory
-  // may go here.
-  //
-} EFI_HOB_MEMORY_ALLOCATION;
-
-///
-/// The resource type.
-///
-typedef UINT32 EFI_RESOURCE_TYPE;
-
-//
-// Value of ResourceType in EFI_HOB_RESOURCE_DESCRIPTOR.
-//
-#define EFI_RESOURCE_SYSTEM_MEMORY          0x00000000
-#define EFI_RESOURCE_MEMORY_MAPPED_IO       0x00000001
-#define EFI_RESOURCE_IO                     0x00000002
-#define EFI_RESOURCE_FIRMWARE_DEVICE        0x00000003
-#define EFI_RESOURCE_MEMORY_MAPPED_IO_PORT  0x00000004
-#define EFI_RESOURCE_MEMORY_RESERVED        0x00000005
-#define EFI_RESOURCE_IO_RESERVED            0x00000006
-#define EFI_RESOURCE_MAX_MEMORY_TYPE        0x00000007
-
-///
-/// A type of recount attribute type.
-///
-typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
-
-//
-// These types can be ORed together as needed.
-//
-// The first three enumerations describe settings
-//
-#define EFI_RESOURCE_ATTRIBUTE_PRESENT              0x00000001
-#define EFI_RESOURCE_ATTRIBUTE_INITIALIZED          0x00000002
-#define EFI_RESOURCE_ATTRIBUTE_TESTED               0x00000004
-//
-// The rest of the settings describe capabilities
-//
-#define EFI_RESOURCE_ATTRIBUTE_SINGLE_BIT_ECC           0x00000008
-#define EFI_RESOURCE_ATTRIBUTE_MULTIPLE_BIT_ECC         0x00000010
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_1           0x00000020
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_2           0x00000040
-#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED           0x00000080
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED          0x00000100
-#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED      0x00000200
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE              0x00000400
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE        0x00000800
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE  0x00001000
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE     0x00002000
-#define EFI_RESOURCE_ATTRIBUTE_16_BIT_IO                0x00004000
-#define EFI_RESOURCE_ATTRIBUTE_32_BIT_IO                0x00008000
-#define EFI_RESOURCE_ATTRIBUTE_64_BIT_IO                0x00010000
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHED_EXPORTED        0x00020000
-
-///
-/// Describes the resource properties of all fixed,
-/// nonrelocatable resource ranges found on the processor
-/// host bus during the HOB producer phase.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_RESOURCE_DESCRIPTOR.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID representing the owner of the resource. This GUID is used by HOB
-  /// consumer phase components to correlate device ownership of a resource.
-  ///
-  EFI_GUID                    Owner;
-  ///
-  /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
-  ///
-  EFI_RESOURCE_TYPE           ResourceType;
-  ///
-  /// Resource attributes as defined by EFI_RESOURCE_ATTRIBUTE_TYPE.
-  ///
-  EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
-  ///
-  /// The physical start address of the resource region.
-  ///
-  EFI_PHYSICAL_ADDRESS        PhysicalStart;
-  ///
-  /// The number of bytes of the resource region.
-  ///
-  UINT64                      ResourceLength;
-} EFI_HOB_RESOURCE_DESCRIPTOR;
-
-///
-/// Allows writers of executable content in the HOB producer phase to
-/// maintain and manage HOBs with specific GUID.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_GUID_EXTENSION.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID that defines the contents of this HOB.
-  ///
-  EFI_GUID                    Name;
-  //
-  // Guid specific data goes here
-  //
-} EFI_HOB_GUID_TYPE;
-
-///
-/// Union of all the possible HOB Types.
-///
-typedef union {
-  EFI_HOB_GENERIC_HEADER              *Header;
-  EFI_HOB_MEMORY_ALLOCATION           *MemoryAllocation;
-  EFI_HOB_RESOURCE_DESCRIPTOR         *ResourceDescriptor;
-  EFI_HOB_GUID_TYPE                   *Guid;
-  UINT8                               *Raw;
-} EFI_PEI_HOB_POINTERS;
-
-
-/**
-  Returns the type of a HOB.
-
-  This macro returns the HobType field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobType.
-
-**/
-#define GET_HOB_TYPE(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobType)
-
-/**
-  Returns the length, in bytes, of a HOB.
-
-  This macro returns the HobLength field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobLength.
-
-**/
-#define GET_HOB_LENGTH(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobLength)
-
-/**
-  Returns a pointer to the next HOB in the HOB list.
-
-  This macro returns a pointer to HOB that follows the
-  HOB specified by HobStart in the HOB List.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return A pointer to the next HOB in the HOB list.
-
-**/
-#define GET_NEXT_HOB(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + GET_HOB_LENGTH (HobStart))
-
-/**
-  Determines if a HOB is the last HOB in the HOB list.
-
-  This macro determine if the HOB specified by HobStart is the
-  last HOB in the HOB list.  If HobStart is last HOB in the HOB list,
-  then TRUE is returned.  Otherwise, FALSE is returned.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @retval TRUE       The HOB specified by HobStart is the last HOB in the HOB list.
-  @retval FALSE      The HOB specified by HobStart is not the last HOB in the HOB list.
-
-**/
-#define END_OF_HOB_LIST(HobStart)  (GET_HOB_TYPE (HobStart) == (UINT16)EFI_HOB_TYPE_END_OF_HOB_LIST)
-
-/**
-  Returns a pointer to data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns a pointer to the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  A pointer to the data buffer in a HOB.
-
-**/
-#define GET_GUID_HOB_DATA(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the size of the data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns the size, in bytes, of the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  The size of the data buffer.
-**/
-#define GET_GUID_HOB_DATA_SIZE(HobStart) \
-  (UINT16)(GET_HOB_LENGTH (HobStart) - sizeof (EFI_HOB_GUID_TYPE))
-
-
-/**
-
- FSP specific GUID HOB definitions
-
- **/
-#define FSP_INFO_HEADER_GUID \
-  { \
-  0x912740BE, 0x2284, 0x4734, {0xB9, 0x71, 0x84, 0xB0, 0x27, 0x35, 0x3F, 0x0C} \
-  }
-
-#define FSP_NON_VOLATILE_STORAGE_HOB_GUID \
-  { \
-  0x721acf02, 0x4d77, 0x4c2a, { 0xb3, 0xdc, 0x27, 0xb, 0x7b, 0xa9, 0xe4, 0xb0 } \
-  }
-
-#define FSP_BOOTLOADER_TEMPORARY_MEMORY_HOB_GUID \
-  { \
-  0xbbcff46c, 0xc8d3, 0x4113, { 0x89, 0x85, 0xb9, 0xd4, 0xf3, 0xb3, 0xf6, 0x4e } \
-  }
-
-#define FSP_HOB_RESOURCE_OWNER_FSP_GUID \
-  { \
-  0x69a79759, 0x1373, 0x4367, { 0xa6, 0xc4, 0xc7, 0xf5, 0x9e, 0xfd, 0x98, 0x6e } \
-  }
-
-#define FSP_HOB_RESOURCE_OWNER_TSEG_GUID \
-  { \
-  0xd038747c, 0xd00c, 0x4980, { 0xb3, 0x19, 0x49, 0x01, 0x99, 0xa4, 0x7d, 0x55 } \
-  }
-
-#define FSP_HOB_RESOURCE_OWNER_GRAPHICS_GUID \
-  { \
-  0x9c7c3aa7, 0x5332, 0x4917, { 0x82, 0xb9, 0x56, 0xa5, 0xf3, 0xe6, 0x2a, 0x07 } \
-  }
-
-#define FSP_HOB_GRAPHICS_INFO_GUID \
-{ 0x39f62cce, 0x6825, 0x4669, { 0xbb, 0x56, 0x54, 0x1a, 0xba, 0x75, 0x3a, 0x07 } }
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspinfoheader.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspinfoheader.h
deleted file mode 100644
index e630788..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspinfoheader.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_INFOHEADER_H__
-#define __FSP_INFOHEADER_H__
-
-///
-/// Fixed FSP header offset in the FSP image
-///
-#define  FSP_INFO_HEADER_OFF    0x94
-
-#pragma pack(1)
-
-typedef struct  {
-  ///
-  /// Signature ('FSPH') for the FSP Information Header
-  ///
-  UINT32  Signature;
-  ///
-  /// Length of the FSP Information Header
-  ///
-  UINT32  HeaderLength;
-  ///
-  /// Reserved
-  ///
-  UINT8   Reserved1[3];
-  ///
-  /// Revision of the FSP Information Header
-  ///
-  UINT8   HeaderRevision;
-  ///
-  /// Revision of the FSP binary
-  ///
-  UINT32  ImageRevision;
-
-
-  ///
-  /// Signature string that will help match the FSP Binary to a supported
-  /// hardware configuration.
-  ///
-  CHAR8   ImageId[8];
-  ///
-  /// Size of the entire FSP binary
-  ///
-  UINT32  ImageSize;
-  ///
-  /// FSP binary preferred base address
-  ///
-  UINT32  ImageBase;
-
-
-  ///
-  /// Attribute for the FSP binary
-  ///
-  UINT32  ImageAttribute;
-  ///
-  /// Offset of the FSP configuration region
-  ///
-  UINT32  CfgRegionOffset;
-  ///
-  /// Size of the FSP configuration region
-  ///
-  UINT32  CfgRegionSize;
-  ///
-  /// Number of API entries this FSP supports
-  ///
-  UINT32  ApiEntryNum;
-
-
-  ///
-  /// TempRamInit API entry offset
-  ///
-  UINT32  TempRamInitEntry;
-  ///
-  /// FspInit API entry offset
-  ///
-  UINT32  FspInitEntry;
-  ///
-  /// NotifyPhase API entry offset
-  ///
-  UINT32  NotifyPhaseEntry;
-  ///
-  /// Reserved
-  ///
-  UINT32  Reserved2;
-
-} FSP_INFO_HEADER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspplatform.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspplatform.h
deleted file mode 100644
index 4bb03d5..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspplatform.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_PLATFORM_H__
-#define __FSP_PLATFORM_H__
-
-#pragma pack(1)
-
-typedef struct {
-  uint32_t            RedMask;
-  uint32_t            GreenMask;
-  uint32_t            BlueMask;
-  uint32_t            ReservedMask;
-} EFI_PIXEL_BITMASK;
-
-typedef enum {
-  PixelRedGreenBlueReserved8BitPerColor,
-  PixelBlueGreenRedReserved8BitPerColor,
-  PixelBitMask,
-  PixelBltOnly,
-  PixelFormatMax
-} EFI_GRAPHICS_PIXEL_FORMAT;
-
-typedef struct {
-  uint32_t                     Version;
-  uint32_t                     HorizontalResolution;
-  uint32_t                     VerticalResolution;
-  EFI_GRAPHICS_PIXEL_FORMAT  PixelFormat;
-  EFI_PIXEL_BITMASK          PixelInformation;
-  uint32_t                     PixelsPerScanLine;
-} EFI_GRAPHICS_OUTPUT_MODE_INFORMATION;
-
-typedef struct {
-  uint64_t FrameBufferBase;
-  uint64_t FrameBufferSize;
-  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION GraphicsMode;
-} PLATFORM_GRAPHICS_OUTPUT;
-
-typedef struct {
-  ///
-  /// FSP common runtime data structure
-  ///
-  FSP_INIT_RT_COMMON_BUFFER  Common;
-} FSP_INIT_RT_BUFFER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspsupport.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspsupport.h
deleted file mode 100644
index a12cf27..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fspsupport.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/**
-
-Copyright (C) 2013-2016 Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_SUPPORT_H__
-#define __FSP_SUPPORT_H__
-
-UINT32
-GetPhysicalLowMemTop (
-  CONST VOID       *HobStart
-  );
-
-UINT32
-GetUsableLowMemTop (
-  CONST VOID             *HobListPtr
-  );
-
-UINT64
-GetUsableHighMemTop (
-  CONST VOID             *HobListPtr
-  );
-
-VOID *
-GetGuidHobDataBuffer (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length,
-  EFI_GUID               *Guid
-  );
-
-UINT64
-GetFspReservedMemoryFromGuid (
-  CONST VOID             *HobListPtr,
-  UINT64                 *FspMemoryLength,
-  EFI_GUID               *FspReservedMemoryGuid
-  );
-
-UINT32
-GetTsegReservedMemory (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-  );
-
-UINT32
-GetFspReservedMemory (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-  );
-
-VOID*
-GetFspNvsDataBuffer (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-  );
-
-VOID *
-GetBootloaderTempMemoryBuffer (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-  );
-
-VOID *
-EFIAPI
-GetNextHob (
-  UINT16                 Type,
-  CONST VOID             *HobStart
-  );
-
-VOID *
-EFIAPI
-GetFirstHob (
-  UINT16                 Type
-  );
-
-VOID *
-EFIAPI
-GetNextGuidHob (
-  CONST EFI_GUID         *Guid,
-  CONST VOID             *HobStart
-  );
-
-VOID *
-EFIAPI
-GetFirstGuidHob (
-  CONST EFI_GUID         *Guid
-  );
-
-VOID
-UpdateFspUpdConfigs (
-  UPD_DATA_REGION        *UpdDataRgn
-  );
-
-#endif
\ No newline at end of file
diff --git a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsptypes.h b/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsptypes.h
deleted file mode 100644
index c8e38e4..0000000
--- a/src/vendorcode/intel/fsp1_0/broadwell_de/include/fsptypes.h
+++ /dev/null
@@ -1,220 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_TYPES_H__
-#define __FSP_TYPES_H__
-
-///
-/// 8-byte unsigned value.
-///
-typedef unsigned long long  UINT64;
-
-///
-/// 8-byte signed value.
-///
-typedef long long           INT64;
-
-///
-/// 4-byte unsigned value.
-///
-typedef unsigned int        UINT32;
-
-///
-/// 4-byte signed value.
-///
-typedef int                 INT32;
-
-///
-/// 2-byte unsigned value.
-///
-typedef unsigned short      UINT16;
-
-///
-/// 2-byte Character.
-///
-typedef unsigned short      CHAR16;
-///
-/// 2-byte signed value.
-///
-typedef short               INT16;
-
-///
-/// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other
-/// values are undefined.
-///
-typedef unsigned char       BOOLEAN;
-
-///
-/// 1-byte unsigned value.
-///
-typedef unsigned char       UINT8;
-
-///
-/// 1-byte Character
-///
-typedef char                CHAR8;
-
-///
-/// 1-byte signed value
-///
-typedef char                INT8;
-
-///
-/// Undeclared type.
-///
-typedef void                VOID;
-
-///
-/// 64-bit physical memory address.
-///
-typedef UINT64              EFI_PHYSICAL_ADDRESS;
-
-///
-/// UEFI and FSP defined status.
-///
-typedef UINT32              EFI_STATUS;
-#define FSP_STATUS          EFI_STATUS
-
-///
-/// Datum is read-only.
-///
-#define CONST     const
-
-///
-/// Datum is scoped to the current file or function.
-///
-#define STATIC    static
-
-///
-/// Boolean true value.  UEFI Specification defines this value to be 1,
-/// but this form is more portable.
-///
-#define TRUE  ((BOOLEAN)(1==1))
-
-///
-/// Boolean false value.  UEFI Specification defines this value to be 0,
-/// but this form is more portable.
-///
-#define FALSE ((BOOLEAN)(0==1))
-
-///
-/// Null pointer
-///
-#ifndef NULL
-#define NULL  ((VOID *) 0)
-#endif
-
-///
-/// Modifier to ensure that all API functions use the correct C calling
-/// convention.
-///
-#define EFIAPI __attribute__((cdecl))
-#define FSPAPI EFIAPI
-
-///
-/// 128 bit buffer containing a unique identifier value.
-///
-typedef struct {
-  UINT32  Data1;
-  UINT16  Data2;
-  UINT16  Data3;
-  UINT8   Data4[8];
-} EFI_GUID;
-
-/**
-  Returns a 16-bit signature built from 2 ASCII characters.
-
-  This macro returns a 16-bit value built from the two ASCII characters specified
-  by A and B.
-
-  @param  A    The first ASCII character.
-  @param  B    The second ASCII character.
-
-  @return A 16-bit value built from the two ASCII characters specified by A and B.
-
-**/
-#define SIGNATURE_16(A, B)        ((A) | (B << 8))
-
-/**
-  Returns a 32-bit signature built from 4 ASCII characters.
-
-  This macro returns a 32-bit value built from the four ASCII characters specified
-  by A, B, C, and D.
-
-  @param  A    The first ASCII character.
-  @param  B    The second ASCII character.
-  @param  C    The third ASCII character.
-  @param  D    The fourth ASCII character.
-
-  @return A 32-bit value built from the two ASCII characters specified by A, B,
-          C and D.
-
-**/
-#define SIGNATURE_32(A, B, C, D)  (SIGNATURE_16 (A, B) | (SIGNATURE_16 (C, D) << 16))
-
-/**
-  Returns a 64-bit signature built from 8 ASCII characters.
-
-  This macro returns a 64-bit value built from the eight ASCII characters specified
-  by A, B, C, D, E, F, G,and H.
-
-  @param  A    The first ASCII character.
-  @param  B    The second ASCII character.
-  @param  C    The third ASCII character.
-  @param  D    The fourth ASCII character.
-  @param  E    The fifth ASCII character.
-  @param  F    The sixth ASCII character.
-  @param  G    The seventh ASCII character.
-  @param  H    The eighth ASCII character.
-
-  @return A 64-bit value built from the two ASCII characters specified by A, B,
-          C, D, E, F, G and H.
-
-**/
-#define SIGNATURE_64(A, B, C, D, E, F, G, H) \
-    (SIGNATURE_32 (A, B, C, D) | ((UINT64) (SIGNATURE_32 (E, F, G, H)) << 32))
-
-///
-/// Assertion for debug
-///
-#define ASSERT(Expression)    do { if (!(Expression)) for (;;); } while (FALSE)
-
-///
-/// Define FSP API return status code.
-/// Compatiable with EFI_STATUS defined in PI Spec.
-///
-#define FSP_SUCCESS               0
-#define FSP_INVALID_PARAMETER     0x80000002
-#define FSP_UNSUPPORTED           0x80000003
-#define FSP_DEVICE_ERROR          0x80000007
-#define FSP_NOT_FOUND             0x8000000E
-#define FSP_ALREADY_STARTED       0x80000014
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/azalia.h b/src/vendorcode/intel/fsp1_0/include/azalia.h
new file mode 100644
index 0000000..c58cf4c
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/azalia.h
@@ -0,0 +1,66 @@
+/**@file
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef _AZALIA_H_
+#define _AZALIA_H_
+
+#include <stdint.h>
+
+#pragma pack(1)
+
+typedef struct {
+  uint32_t  VendorDeviceId;
+  uint16_t  SubSystemId;
+  uint8_t   RevisionId;                       /// 0xFF applies to all steppings
+  uint8_t   FrontPanelSupport;
+  uint16_t  NumberOfRearJacks;
+  uint16_t  NumberOfFrontJacks;
+} PCH_AZALIA_VERB_TABLE_HEADER;
+
+typedef struct {
+  PCH_AZALIA_VERB_TABLE_HEADER  VerbTableHeader;
+  uint32_t                        *VerbTableData;
+} PCH_AZALIA_VERB_TABLE;
+
+typedef struct {
+  uint8_t                 Pme       : 1;      /// 0: Disable; 1: Enable
+  uint8_t                 DS        : 1;      /// 0: Docking is not supported; 1:Docking is supported
+  uint8_t                 DA        : 1;      /// 0: Docking is not attached; 1:Docking is attached
+  uint8_t                 HdmiCodec : 1;      /// 0: Disable; 1: Enable
+  uint8_t                 AzaliaVCi : 1;      /// 0: Disable; 1: Enable
+  uint8_t                 Rsvdbits  : 3;
+  uint8_t                 AzaliaVerbTableNum; /// Number of verb tables provided by platform
+  PCH_AZALIA_VERB_TABLE  *AzaliaVerbTable;   /// Pointer to the actual verb table(s)
+  uint16_t                ResetWaitTimer;     /// The delay timer after Azalia reset, the value is number of microseconds
+} PCH_AZALIA_CONFIG;
+
+#pragma pack()
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fsp.h b/src/vendorcode/intel/fsp1_0/include/fsp.h
new file mode 100644
index 0000000..75d9a01
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fsp.h
@@ -0,0 +1,46 @@
+/**
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+/** \file  fsp.h
+ *
+ *
+ */
+#include <stdint.h>
+#include "fsptypes.h"
+#include "fspfv.h"
+#include "fspffs.h"
+#include "fsphob.h"
+#include "fspapi.h"
+#include "fspplatform.h"
+#include "fspinfoheader.h"
+#include <fspvpd.h>
+#include "fspbootmode.h"
+#include "fspguid.h"
+
diff --git a/src/vendorcode/intel/fsp1_0/include/fspapi.h b/src/vendorcode/intel/fsp1_0/include/fspapi.h
new file mode 100644
index 0000000..5009246
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspapi.h
@@ -0,0 +1,67 @@
+/**
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef _FSP_API_H_
+#define _FSP_API_H_
+
+#include <fsptypes.h>
+
+#pragma pack(1)
+
+typedef VOID (* CONTINUATION_PROC)(EFI_STATUS Status, VOID *HobListPtr);
+
+typedef struct {
+  VOID               *NvsBufferPtr;
+  VOID               *RtBufferPtr;
+  CONTINUATION_PROC   ContinuationFunc;
+} FSP_INIT_PARAMS;
+
+typedef struct {
+  UINT32            *StackTop;
+  UINT32             BootMode;  /* Refer to boot mode defined in MdePkg\Include\Pi\PiBootMode.h */
+  VOID              *UpdDataRgnPtr;
+  UINT32             Reserved[7];
+} FSP_INIT_RT_COMMON_BUFFER;
+
+typedef enum {
+  EnumInitPhaseAfterPciEnumeration = 0x20,
+  EnumInitPhaseReadyToBoot = 0x40
+} FSP_INIT_PHASE;
+
+typedef struct {
+  FSP_INIT_PHASE     Phase;
+} NOTIFY_PHASE_PARAMS;
+
+#pragma pack()
+
+typedef FSP_STATUS (FSPAPI *FSP_FSP_INIT)    (FSP_INIT_PARAMS     *FspInitParamPtr);
+typedef FSP_STATUS (FSPAPI *FSP_NOTFY_PHASE) (NOTIFY_PHASE_PARAMS *NotifyPhaseParamPtr);
+
+#endif /* _FSP_API_H_ */
diff --git a/src/vendorcode/intel/fsp1_0/include/fspbootmode.h b/src/vendorcode/intel/fsp1_0/include/fspbootmode.h
new file mode 100644
index 0000000..16cddf0
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspbootmode.h
@@ -0,0 +1,54 @@
+/** @file
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef __PI_BOOT_MODE_H__
+#define __PI_BOOT_MODE_H__
+
+///
+/// EFI boot mode
+///
+typedef UINT32  EFI_BOOT_MODE;
+
+//
+// 0x21 - 0xf..f are reserved.
+//
+#define BOOT_WITH_FULL_CONFIGURATION                  0x00
+#define BOOT_WITH_MINIMAL_CONFIGURATION               0x01
+#define BOOT_ASSUMING_NO_CONFIGURATION_CHANGES        0x02
+#define BOOT_WITH_FULL_CONFIGURATION_PLUS_DIAGNOSTICS 0x03
+#define BOOT_WITH_DEFAULT_SETTINGS                    0x04
+#define BOOT_ON_S4_RESUME                             0x05
+#define BOOT_ON_S5_RESUME                             0x06
+#define BOOT_ON_S2_RESUME                             0x10
+#define BOOT_ON_S3_RESUME                             0x11
+#define BOOT_ON_FLASH_UPDATE                          0x12
+#define BOOT_IN_RECOVERY_MODE                         0x20
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fspffs.h b/src/vendorcode/intel/fsp1_0/include/fspffs.h
new file mode 100644
index 0000000..9e8244d
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspffs.h
@@ -0,0 +1,507 @@
+/** @file
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef __PI_FIRMWARE_FILE_H__
+#define __PI_FIRMWARE_FILE_H__
+
+#include <fsptypes.h>
+
+#pragma pack(1)
+///
+/// Used to verify the integrity of the file.
+///
+typedef union {
+  struct {
+    ///
+    /// The IntegrityCheck.Checksum.Header field is an 8-bit checksum of the file
+    /// header. The State and IntegrityCheck.Checksum.File fields are assumed
+    /// to be zero and the checksum is calculated such that the entire header sums to zero.
+    ///
+    UINT8   Header;
+    ///
+    /// If the FFS_ATTRIB_CHECKSUM (see definition below) bit of the Attributes
+    /// field is set to one, the IntegrityCheck.Checksum.File field is an 8-bit
+    /// checksum of the file data.
+    /// If the FFS_ATTRIB_CHECKSUM bit of the Attributes field is cleared to zero,
+    /// the IntegrityCheck.Checksum.File field must be initialized with a value of
+    /// 0xAA. The IntegrityCheck.Checksum.File field is valid any time the
+    /// EFI_FILE_DATA_VALID bit is set in the State field.
+    ///
+    UINT8   File;
+  } Checksum;
+  ///
+  /// This is the full 16 bits of the IntegrityCheck field.
+  ///
+  UINT16    Checksum16;
+} EFI_FFS_INTEGRITY_CHECK;
+
+///
+/// FFS_FIXED_CHECKSUM is the checksum value used when the
+/// FFS_ATTRIB_CHECKSUM attribute bit is clear.
+///
+#define FFS_FIXED_CHECKSUM  0xAA
+
+typedef UINT8 EFI_FV_FILETYPE;
+typedef UINT8 EFI_FFS_FILE_ATTRIBUTES;
+typedef UINT8 EFI_FFS_FILE_STATE;
+
+///
+/// File Types Definitions
+///
+#define EFI_FV_FILETYPE_ALL                   0x00
+#define EFI_FV_FILETYPE_RAW                   0x01
+#define EFI_FV_FILETYPE_FREEFORM              0x02
+#define EFI_FV_FILETYPE_SECURITY_CORE         0x03
+#define EFI_FV_FILETYPE_PEI_CORE              0x04
+#define EFI_FV_FILETYPE_DXE_CORE              0x05
+#define EFI_FV_FILETYPE_PEIM                  0x06
+#define EFI_FV_FILETYPE_DRIVER                0x07
+#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08
+#define EFI_FV_FILETYPE_APPLICATION           0x09
+#define EFI_FV_FILETYPE_SMM                   0x0A
+#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
+#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
+#define EFI_FV_FILETYPE_SMM_CORE              0x0D
+#define EFI_FV_FILETYPE_OEM_MIN               0xc0
+#define EFI_FV_FILETYPE_OEM_MAX               0xdf
+#define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
+#define EFI_FV_FILETYPE_DEBUG_MAX             0xef
+#define EFI_FV_FILETYPE_FFS_MIN               0xf0
+#define EFI_FV_FILETYPE_FFS_MAX               0xff
+#define EFI_FV_FILETYPE_FFS_PAD               0xf0
+///
+/// FFS File Attributes.
+///
+#define FFS_ATTRIB_LARGE_FILE         0x01
+#define FFS_ATTRIB_FIXED              0x04
+#define FFS_ATTRIB_DATA_ALIGNMENT     0x38
+#define FFS_ATTRIB_CHECKSUM           0x40
+
+///
+/// FFS File State Bits.
+///
+#define EFI_FILE_HEADER_CONSTRUCTION  0x01
+#define EFI_FILE_HEADER_VALID         0x02
+#define EFI_FILE_DATA_VALID           0x04
+#define EFI_FILE_MARKED_FOR_UPDATE    0x08
+#define EFI_FILE_DELETED              0x10
+#define EFI_FILE_HEADER_INVALID       0x20
+
+
+///
+/// Each file begins with the header that describe the
+/// contents and state of the files.
+///
+typedef struct {
+  ///
+  /// This GUID is the file name. It is used to uniquely identify the file.
+  ///
+  EFI_GUID                Name;
+  ///
+  /// Used to verify the integrity of the file.
+  ///
+  EFI_FFS_INTEGRITY_CHECK IntegrityCheck;
+  ///
+  /// Identifies the type of file.
+  ///
+  EFI_FV_FILETYPE         Type;
+  ///
+  /// Declares various file attribute bits.
+  ///
+  EFI_FFS_FILE_ATTRIBUTES Attributes;
+  ///
+  /// The length of the file in bytes, including the FFS header.
+  ///
+  UINT8                   Size[3];
+  ///
+  /// Used to track the state of the file throughout the life of the file from creation to deletion.
+  ///
+  EFI_FFS_FILE_STATE      State;
+} EFI_FFS_FILE_HEADER;
+
+typedef struct {
+  ///
+  /// This GUID is the file name. It is used to uniquely identify the file. There may be only
+  /// one instance of a file with the file name GUID of Name in any given firmware
+  /// volume, except if the file type is EFI_FV_FILETYPE_FFS_PAD.
+  ///
+  EFI_GUID                  Name;
+
+  ///
+  /// Used to verify the integrity of the file.
+  ///
+  EFI_FFS_INTEGRITY_CHECK   IntegrityCheck;
+
+  ///
+  /// Identifies the type of file.
+  ///
+  EFI_FV_FILETYPE           Type;
+
+  ///
+  /// Declares various file attribute bits.
+  ///
+  EFI_FFS_FILE_ATTRIBUTES   Attributes;
+
+  ///
+  /// The length of the file in bytes, including the FFS header.
+  /// The length of the file data is either (Size - sizeof(EFI_FFS_FILE_HEADER)). This calculation means a
+  /// zero-length file has a Size of 24 bytes, which is sizeof(EFI_FFS_FILE_HEADER).
+  /// Size is not required to be a multiple of 8 bytes. Given a file F, the next file header is
+  /// located at the next 8-byte aligned firmware volume offset following the last byte of the file F.
+  ///
+  UINT8                     Size[3];
+
+  ///
+  /// Used to track the state of the file throughout the life of the file from creation to deletion.
+  ///
+  EFI_FFS_FILE_STATE        State;
+
+  ///
+  /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
+  /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
+  ///
+  UINT32                    ExtendedSize;
+} EFI_FFS_FILE_HEADER2;
+
+#define IS_FFS_FILE2(FfsFileHeaderPtr) \
+    (((((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Attributes) & FFS_ATTRIB_LARGE_FILE) == FFS_ATTRIB_LARGE_FILE)
+
+#define FFS_FILE_SIZE(FfsFileHeaderPtr) \
+    ((UINT32) (*((UINT32 *) ((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Size) & 0x00ffffff))
+
+#define FFS_FILE2_SIZE(FfsFileHeaderPtr) \
+    (((EFI_FFS_FILE_HEADER2 *) (UINTN) FfsFileHeaderPtr)->ExtendedSize)
+
+typedef UINT8 EFI_SECTION_TYPE;
+
+///
+/// Pseudo type. It is used as a wild card when retrieving sections.
+///  The section type EFI_SECTION_ALL matches all section types.
+///
+#define EFI_SECTION_ALL                   0x00
+
+///
+/// Encapsulation section Type values.
+///
+#define EFI_SECTION_COMPRESSION           0x01
+
+#define EFI_SECTION_GUID_DEFINED          0x02
+
+#define EFI_SECTION_DISPOSABLE            0x03
+
+///
+/// Leaf section Type values.
+///
+#define EFI_SECTION_PE32                  0x10
+#define EFI_SECTION_PIC                   0x11
+#define EFI_SECTION_TE                    0x12
+#define EFI_SECTION_DXE_DEPEX             0x13
+#define EFI_SECTION_VERSION               0x14
+#define EFI_SECTION_USER_INTERFACE        0x15
+#define EFI_SECTION_COMPATIBILITY16       0x16
+#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17
+#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18
+#define EFI_SECTION_RAW                   0x19
+#define EFI_SECTION_PEI_DEPEX             0x1B
+#define EFI_SECTION_SMM_DEPEX             0x1C
+
+///
+/// Common section header.
+///
+typedef struct {
+  ///
+  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
+  /// including the EFI_COMMON_SECTION_HEADER.
+  ///
+  UINT8             Size[3];
+  EFI_SECTION_TYPE  Type;
+  ///
+  /// Declares the section type.
+  ///
+} EFI_COMMON_SECTION_HEADER;
+
+typedef struct {
+  ///
+  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
+  /// including the EFI_COMMON_SECTION_HEADER.
+  ///
+  UINT8             Size[3];
+
+  EFI_SECTION_TYPE  Type;
+
+  ///
+  /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
+  /// Size is not equal to 0xFFFFFF, then this field does not exist.
+  ///
+  UINT32            ExtendedSize;
+} EFI_COMMON_SECTION_HEADER2;
+
+///
+/// Leaf section type that contains an
+/// IA-32 16-bit executable image.
+///
+typedef EFI_COMMON_SECTION_HEADER  EFI_COMPATIBILITY16_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2 EFI_COMPATIBILITY16_SECTION2;
+
+///
+/// CompressionType of EFI_COMPRESSION_SECTION.
+///
+#define EFI_NOT_COMPRESSED        0x00
+#define EFI_STANDARD_COMPRESSION  0x01
+///
+/// An encapsulation section type in which the
+/// section data is compressed.
+///
+typedef struct {
+  ///
+  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
+  ///
+  EFI_COMMON_SECTION_HEADER   CommonHeader;
+  ///
+  /// The UINT32 that indicates the size of the section data after decompression.
+  ///
+  UINT32                      UncompressedLength;
+  ///
+  /// Indicates which compression algorithm is used.
+  ///
+  UINT8                       CompressionType;
+} EFI_COMPRESSION_SECTION;
+
+typedef struct {
+  ///
+  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
+  ///
+  EFI_COMMON_SECTION_HEADER2    CommonHeader;
+  ///
+  /// UINT32 that indicates the size of the section data after decompression.
+  ///
+  UINT32                        UncompressedLength;
+  ///
+  /// Indicates which compression algorithm is used.
+  ///
+  UINT8                         CompressionType;
+} EFI_COMPRESSION_SECTION2;
+
+///
+/// An encapsulation section type in which the section data is disposable.
+/// A disposable section is an encapsulation section in which the section data may be disposed of during
+/// the process of creating or updating a firmware image without significant impact on the usefulness of
+/// the file. The Type field in the section header is set to EFI_SECTION_DISPOSABLE. This
+/// allows optional or descriptive data to be included with the firmware file which can be removed in
+/// order to conserve space. The contents of this section are implementation specific, but might contain
+/// debug data or detailed integration instructions.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_DISPOSABLE_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_DISPOSABLE_SECTION2;
+
+///
+/// The leaf section which could be used to determine the dispatch order of DXEs.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_DXE_DEPEX_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_DXE_DEPEX_SECTION2;
+
+///
+/// The leaf section which contains a PI FV.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
+
+///
+/// The leaf section which contains a single GUID.
+///
+typedef struct {
+  ///
+  /// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
+  ///
+  EFI_COMMON_SECTION_HEADER   CommonHeader;
+  ///
+  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
+  ///
+  EFI_GUID                    SubTypeGuid;
+} EFI_FREEFORM_SUBTYPE_GUID_SECTION;
+
+typedef struct {
+  ///
+  /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
+  ///
+  EFI_COMMON_SECTION_HEADER2    CommonHeader;
+  ///
+  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
+  ///
+  EFI_GUID                      SubTypeGuid;
+} EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
+
+///
+/// Attributes of EFI_GUID_DEFINED_SECTION.
+///
+#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED  0x01
+#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID    0x02
+///
+/// The leaf section which is encapsulation defined by specific GUID.
+///
+typedef struct {
+  ///
+  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
+  ///
+  EFI_COMMON_SECTION_HEADER   CommonHeader;
+  ///
+  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
+  ///
+  EFI_GUID                    SectionDefinitionGuid;
+  ///
+  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
+  ///
+  UINT16                      DataOffset;
+  ///
+  /// The bit field that declares some specific characteristics of the section contents.
+  ///
+  UINT16                      Attributes;
+} EFI_GUID_DEFINED_SECTION;
+
+typedef struct {
+  ///
+  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
+  ///
+  EFI_COMMON_SECTION_HEADER2    CommonHeader;
+  ///
+  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
+  ///
+  EFI_GUID                      SectionDefinitionGuid;
+  ///
+  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
+  ///
+  UINT16                        DataOffset;
+  ///
+  /// The bit field that declares some specific characteristics of the section contents.
+  ///
+  UINT16                        Attributes;
+} EFI_GUID_DEFINED_SECTION2;
+
+///
+/// The leaf section which contains PE32+ image.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_PE32_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_PE32_SECTION2;
+
+///
+/// The leaf section used to determine the dispatch order of PEIMs.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_PEI_DEPEX_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_PEI_DEPEX_SECTION2;
+
+///
+/// A leaf section type that contains a position-independent-code (PIC) image.
+/// A PIC image section is a leaf section that contains a position-independent-code (PIC) image.
+/// In addition to normal PE32+ images that contain relocation information, PEIM executables may be
+/// PIC and are referred to as PIC images. A PIC image is the same as a PE32+ image except that all
+/// relocation information has been stripped from the image and the image can be moved and will
+/// execute correctly without performing any relocation or other fix-ups. EFI_PIC_SECTION2 must
+/// be used if the section is 16MB or larger.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_PIC_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_PIC_SECTION2;
+
+///
+/// The leaf section which constains the position-independent-code image.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_TE_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_TE_SECTION2;
+
+///
+/// The leaf section which contains an array of zero or more bytes.
+///
+typedef EFI_COMMON_SECTION_HEADER   EFI_RAW_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2  EFI_RAW_SECTION2;
+
+///
+/// The SMM dependency expression section is a leaf section that contains a dependency expression that
+/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
+/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
+/// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
+/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
+/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
+///
+typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
+typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
+
+///
+/// The leaf section which contains a unicode string that
+/// is human readable file name.
+///
+typedef struct {
+  EFI_COMMON_SECTION_HEADER   CommonHeader;
+
+  ///
+  /// Array of unicode string.
+  ///
+  CHAR16                      FileNameString[1];
+} EFI_USER_INTERFACE_SECTION;
+
+typedef struct {
+  EFI_COMMON_SECTION_HEADER2    CommonHeader;
+  CHAR16                        FileNameString[1];
+} EFI_USER_INTERFACE_SECTION2;
+
+///
+/// The leaf section which contains a numeric build number and
+/// an optional unicode string that represents the file revision.
+///
+typedef struct {
+  EFI_COMMON_SECTION_HEADER   CommonHeader;
+  UINT16                      BuildNumber;
+
+  ///
+  /// Array of unicode string.
+  ///
+  CHAR16                      VersionString[1];
+} EFI_VERSION_SECTION;
+
+typedef struct {
+  EFI_COMMON_SECTION_HEADER2    CommonHeader;
+  ///
+  /// A UINT16 that represents a particular build. Subsequent builds have monotonically
+  /// increasing build numbers relative to earlier builds.
+  ///
+  UINT16                        BuildNumber;
+  CHAR16                        VersionString[1];
+} EFI_VERSION_SECTION2;
+
+#define IS_SECTION2(SectionHeaderPtr) \
+    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff) == 0x00ffffff)
+
+#define SECTION_SIZE(SectionHeaderPtr) \
+    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff))
+
+#define SECTION2_SIZE(SectionHeaderPtr) \
+    (((EFI_COMMON_SECTION_HEADER2 *) (UINTN) SectionHeaderPtr)->ExtendedSize)
+
+#pragma pack()
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fspfv.h b/src/vendorcode/intel/fsp1_0/include/fspfv.h
new file mode 100644
index 0000000..9688cf4
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspfv.h
@@ -0,0 +1,249 @@
+/** @file
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef __PI_FIRMWAREVOLUME_H__
+#define __PI_FIRMWAREVOLUME_H__
+
+#include <fsptypes.h>
+
+///
+/// EFI_FV_FILE_ATTRIBUTES
+///
+typedef UINT32  EFI_FV_FILE_ATTRIBUTES;
+
+//
+// Value of EFI_FV_FILE_ATTRIBUTES.
+//
+#define EFI_FV_FILE_ATTRIB_ALIGNMENT      0x0000001F
+#define EFI_FV_FILE_ATTRIB_FIXED          0x00000100
+#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED  0x00000200
+
+///
+/// type of EFI FVB attribute
+///
+typedef UINT32  EFI_FVB_ATTRIBUTES_2;
+
+//
+// Attributes bit definitions
+//
+#define EFI_FVB2_READ_DISABLED_CAP  0x00000001
+#define EFI_FVB2_READ_ENABLED_CAP   0x00000002
+#define EFI_FVB2_READ_STATUS        0x00000004
+#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
+#define EFI_FVB2_WRITE_ENABLED_CAP  0x00000010
+#define EFI_FVB2_WRITE_STATUS       0x00000020
+#define EFI_FVB2_LOCK_CAP           0x00000040
+#define EFI_FVB2_LOCK_STATUS        0x00000080
+#define EFI_FVB2_STICKY_WRITE       0x00000200
+#define EFI_FVB2_MEMORY_MAPPED      0x00000400
+#define EFI_FVB2_ERASE_POLARITY     0x00000800
+#define EFI_FVB2_READ_LOCK_CAP      0x00001000
+#define EFI_FVB2_READ_LOCK_STATUS   0x00002000
+#define EFI_FVB2_WRITE_LOCK_CAP     0x00004000
+#define EFI_FVB2_WRITE_LOCK_STATUS  0x00008000
+#define EFI_FVB2_ALIGNMENT          0x001F0000
+#define EFI_FVB2_ALIGNMENT_1        0x00000000
+#define EFI_FVB2_ALIGNMENT_2        0x00010000
+#define EFI_FVB2_ALIGNMENT_4        0x00020000
+#define EFI_FVB2_ALIGNMENT_8        0x00030000
+#define EFI_FVB2_ALIGNMENT_16       0x00040000
+#define EFI_FVB2_ALIGNMENT_32       0x00050000
+#define EFI_FVB2_ALIGNMENT_64       0x00060000
+#define EFI_FVB2_ALIGNMENT_128      0x00070000
+#define EFI_FVB2_ALIGNMENT_256      0x00080000
+#define EFI_FVB2_ALIGNMENT_512      0x00090000
+#define EFI_FVB2_ALIGNMENT_1K       0x000A0000
+#define EFI_FVB2_ALIGNMENT_2K       0x000B0000
+#define EFI_FVB2_ALIGNMENT_4K       0x000C0000
+#define EFI_FVB2_ALIGNMENT_8K       0x000D0000
+#define EFI_FVB2_ALIGNMENT_16K      0x000E0000
+#define EFI_FVB2_ALIGNMENT_32K      0x000F0000
+#define EFI_FVB2_ALIGNMENT_64K      0x00100000
+#define EFI_FVB2_ALIGNMENT_128K     0x00110000
+#define EFI_FVB2_ALIGNMENT_256K     0x00120000
+#define EFI_FVB2_ALIGNMENT_512K     0x00130000
+#define EFI_FVB2_ALIGNMENT_1M       0x00140000
+#define EFI_FVB2_ALIGNMENT_2M       0x00150000
+#define EFI_FVB2_ALIGNMENT_4M       0x00160000
+#define EFI_FVB2_ALIGNMENT_8M       0x00170000
+#define EFI_FVB2_ALIGNMENT_16M      0x00180000
+#define EFI_FVB2_ALIGNMENT_32M      0x00190000
+#define EFI_FVB2_ALIGNMENT_64M      0x001A0000
+#define EFI_FVB2_ALIGNMENT_128M     0x001B0000
+#define EFI_FVB2_ALIGNMENT_256M     0x001C0000
+#define EFI_FVB2_ALIGNMENT_512M     0x001D0000
+#define EFI_FVB2_ALIGNMENT_1G       0x001E0000
+#define EFI_FVB2_ALIGNMENT_2G       0x001F0000
+
+
+typedef struct {
+  ///
+  /// The number of sequential blocks which are of the same size.
+  ///
+  UINT32 NumBlocks;
+  ///
+  /// The size of the blocks.
+  ///
+  UINT32 Length;
+} EFI_FV_BLOCK_MAP_ENTRY;
+
+///
+/// Describes the features and layout of the firmware volume.
+///
+typedef struct {
+  ///
+  /// The first 16 bytes are reserved to allow for the reset vector of
+  /// processors whose reset vector is at address 0.
+  ///
+  UINT8                     ZeroVector[16];
+  ///
+  /// Declares the file system with which the firmware volume is formatted.
+  ///
+  EFI_GUID                  FileSystemGuid;
+  ///
+  /// Length in bytes of the complete firmware volume, including the header.
+  ///
+  UINT64                    FvLength;
+  ///
+  /// Set to EFI_FVH_SIGNATURE
+  ///
+  UINT32                    Signature;
+  ///
+  /// Declares capabilities and power-on defaults for the firmware volume.
+  ///
+  EFI_FVB_ATTRIBUTES_2      Attributes;
+  ///
+  /// Length in bytes of the complete firmware volume header.
+  ///
+  UINT16                    HeaderLength;
+  ///
+  /// A 16-bit checksum of the firmware volume header. A valid header sums to zero.
+  ///
+  UINT16                    Checksum;
+  ///
+  /// Offset, relative to the start of the header, of the extended header
+  /// (EFI_FIRMWARE_VOLUME_EXT_HEADER) or zero if there is no extended header.
+  ///
+  UINT16                    ExtHeaderOffset;
+  ///
+  /// This field must always be set to zero.
+  ///
+  UINT8                     Reserved[1];
+  ///
+  /// Set to 2. Future versions of this specification may define new header fields and will
+  /// increment the Revision field accordingly.
+  ///
+  UINT8                     Revision;
+  ///
+  /// An array of run-length encoded FvBlockMapEntry structures. The array is
+  /// terminated with an entry of {0,0}.
+  ///
+  EFI_FV_BLOCK_MAP_ENTRY    BlockMap[1];
+} EFI_FIRMWARE_VOLUME_HEADER;
+
+#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
+
+///
+/// Firmware Volume Header Revision definition
+///
+#define EFI_FVH_REVISION  0x02
+
+///
+/// Extension header pointed by ExtHeaderOffset of volume header.
+///
+typedef struct {
+  ///
+  /// Firmware volume name.
+  ///
+  EFI_GUID  FvName;
+  ///
+  /// Size of the rest of the extension header, including this structure.
+  ///
+  UINT32    ExtHeaderSize;
+} EFI_FIRMWARE_VOLUME_EXT_HEADER;
+
+///
+/// Entry struture for describing FV extension header
+///
+typedef struct {
+  ///
+  /// Size of this header extension.
+  ///
+  UINT16    ExtEntrySize;
+  ///
+  /// Type of the header.
+  ///
+  UINT16    ExtEntryType;
+} EFI_FIRMWARE_VOLUME_EXT_ENTRY;
+
+#define EFI_FV_EXT_TYPE_OEM_TYPE  0x01
+///
+/// This extension header provides a mapping between a GUID and an OEM file type.
+///
+typedef struct {
+  ///
+  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
+  ///
+  EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr;
+  ///
+  /// A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31). If a bit
+  /// is '1', then the GUID entry exists in Types. If a bit is '0' then no GUID entry exists in Types.
+  ///
+  UINT32    TypeMask;
+  ///
+  /// An array of GUIDs, each GUID representing an OEM file type.
+  ///
+  /// EFI_GUID  Types[1];
+  ///
+} EFI_FIRMWARE_VOLUME_EXT_ENTRY_OEM_TYPE;
+
+#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
+
+///
+/// This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific
+/// GUID FormatType type which includes a length and a successive series of data bytes.
+///
+typedef struct {
+  ///
+  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
+  ///
+  EFI_FIRMWARE_VOLUME_EXT_ENTRY     Hdr;
+  ///
+  /// Vendor-specific GUID.
+  ///
+  EFI_GUID                          FormatType;
+  ///
+  /// An arry of bytes of length Length.
+  ///
+  /// UINT8                             Data[1];
+  ///
+} EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE;
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fspguid.h b/src/vendorcode/intel/fsp1_0/include/fspguid.h
new file mode 100644
index 0000000..b9a6183
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspguid.h
@@ -0,0 +1,69 @@
+/** @file
+
+Copyright (C) 2014, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef __FSP_GUID_H__
+#define __FSP_GUID_H__
+
+/**
+
+ FSP specific GUID HOB definitions
+
+ **/
+#define FSP_INFO_HEADER_GUID \
+  { \
+  0x912740BE, 0x2284, 0x4734, {0xB9, 0x71, 0x84, 0xB0, 0x27, 0x35, 0x3F, 0x0C} \
+  }
+
+#define FSP_NON_VOLATILE_STORAGE_HOB_GUID \
+  { \
+  0x721acf02, 0x4d77, 0x4c2a, { 0xb3, 0xdc, 0x27, 0xb, 0x7b, 0xa9, 0xe4, 0xb0 } \
+  }
+
+#define FSP_BOOTLOADER_TEMPORARY_MEMORY_HOB_GUID \
+  { \
+  0xbbcff46c, 0xc8d3, 0x4113, { 0x89, 0x85, 0xb9, 0xd4, 0xf3, 0xb3, 0xf6, 0x4e } \
+  }
+
+#define FSP_HOB_RESOURCE_OWNER_FSP_GUID \
+  { \
+  0x69a79759, 0x1373, 0x4367, { 0xa6, 0xc4, 0xc7, 0xf5, 0x9e, 0xfd, 0x98, 0x6e } \
+  }
+
+#define FSP_HOB_RESOURCE_OWNER_TSEG_GUID \
+  { \
+  0xd038747c, 0xd00c, 0x4980, { 0xb3, 0x19, 0x49, 0x01, 0x99, 0xa4, 0x7d, 0x55 } \
+  }
+
+#define FSP_HOB_RESOURCE_OWNER_GRAPHICS_GUID \
+  { \
+  0x9c7c3aa7, 0x5332, 0x4917, { 0x82, 0xb9, 0x56, 0xa5, 0xf3, 0xe6, 0x2a, 0x07 } \
+  }
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fsphob.h b/src/vendorcode/intel/fsp1_0/include/fsphob.h
new file mode 100644
index 0000000..a4577e3
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fsphob.h
@@ -0,0 +1,544 @@
+/** @file
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef __PI_HOB_H__
+#define __PI_HOB_H__
+
+#include <fsptypes.h>
+
+//
+// HobType of EFI_HOB_GENERIC_HEADER.
+//
+#define EFI_HOB_TYPE_MEMORY_ALLOCATION    0x0002
+#define EFI_HOB_TYPE_RESOURCE_DESCRIPTOR  0x0003
+#define EFI_HOB_TYPE_GUID_EXTENSION       0x0004
+#define EFI_HOB_TYPE_UNUSED               0xFFFE
+#define EFI_HOB_TYPE_END_OF_HOB_LIST      0xFFFF
+
+///
+/// Describes the format and size of the data inside the HOB.
+/// All HOBs must contain this generic HOB header.
+///
+typedef struct {
+  ///
+  /// Identifies the HOB data structure type.
+  ///
+  UINT16    HobType;
+  ///
+  /// The length in bytes of the HOB.
+  ///
+  UINT16    HobLength;
+  ///
+  /// This field must always be set to zero.
+  ///
+  UINT32    Reserved;
+} EFI_HOB_GENERIC_HEADER;
+
+///
+/// Enumeration of memory types introduced in UEFI.
+///
+typedef enum {
+  ///
+  /// Not used.
+  ///
+  EfiReservedMemoryType,
+  ///
+  /// The code portions of a loaded application.
+  /// (Note that UEFI OS loaders are UEFI applications.)
+  ///
+  EfiLoaderCode,
+  ///
+  /// The data portions of a loaded application and the default data allocation
+  /// type used by an application to allocate pool memory.
+  ///
+  EfiLoaderData,
+  ///
+  /// The code portions of a loaded Boot Services Driver.
+  ///
+  EfiBootServicesCode,
+  ///
+  /// The data portions of a loaded Boot Serves Driver, and the default data
+  /// allocation type used by a Boot Services Driver to allocate pool memory.
+  ///
+  EfiBootServicesData,
+  ///
+  /// The code portions of a loaded Runtime Services Driver.
+  ///
+  EfiRuntimeServicesCode,
+  ///
+  /// The data portions of a loaded Runtime Services Driver and the default
+  /// data allocation type used by a Runtime Services Driver to allocate pool memory.
+  ///
+  EfiRuntimeServicesData,
+  ///
+  /// Free (unallocated) memory.
+  ///
+  EfiConventionalMemory,
+  ///
+  /// Memory in which errors have been detected.
+  ///
+  EfiUnusableMemory,
+  ///
+  /// Memory that holds the ACPI tables.
+  ///
+  EfiACPIReclaimMemory,
+  ///
+  /// Address space reserved for use by the firmware.
+  ///
+  EfiACPIMemoryNVS,
+  ///
+  /// Used by system firmware to request that a memory-mapped IO region
+  /// be mapped by the OS to a virtual address so it can be accessed by EFI runtime services.
+  ///
+  EfiMemoryMappedIO,
+  ///
+  /// System memory-mapped IO region that is used to translate memory
+  /// cycles to IO cycles by the processor.
+  ///
+  EfiMemoryMappedIOPortSpace,
+  ///
+  /// Address space reserved by the firmware for code that is part of the processor.
+  ///
+  EfiPalCode,
+  EfiMaxMemoryType
+} EFI_MEMORY_TYPE;
+
+///
+/// EFI_HOB_MEMORY_ALLOCATION_HEADER describes the
+/// various attributes of the logical memory allocation. The type field will be used for
+/// subsequent inclusion in the UEFI memory map.
+///
+typedef struct {
+  ///
+  /// A GUID that defines the memory allocation region's type and purpose, as well as
+  /// other fields within the memory allocation HOB. This GUID is used to define the
+  /// additional data within the HOB that may be present for the memory allocation HOB.
+  /// Type EFI_GUID is defined in InstallProtocolInterface() in the UEFI 2.0
+  /// specification.
+  ///
+  EFI_GUID              Name;
+
+  ///
+  /// The base address of memory allocated by this HOB. Type
+  /// EFI_PHYSICAL_ADDRESS is defined in AllocatePages() in the UEFI 2.0
+  /// specification.
+  ///
+  EFI_PHYSICAL_ADDRESS  MemoryBaseAddress;
+
+  ///
+  /// The length in bytes of memory allocated by this HOB.
+  ///
+  UINT64                MemoryLength;
+
+  ///
+  /// Defines the type of memory allocated by this HOB. The memory type definition
+  /// follows the EFI_MEMORY_TYPE definition. Type EFI_MEMORY_TYPE is defined
+  /// in AllocatePages() in the UEFI 2.0 specification.
+  ///
+  EFI_MEMORY_TYPE       MemoryType;
+
+  ///
+  /// Padding for Itanium processor family
+  ///
+  UINT8                 Reserved[4];
+} EFI_HOB_MEMORY_ALLOCATION_HEADER;
+
+///
+/// Describes all memory ranges used during the HOB producer
+/// phase that exist outside the HOB list. This HOB type
+/// describes how memory is used, not the physical attributes of memory.
+///
+typedef struct {
+  ///
+  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_MEMORY_ALLOCATION.
+  ///
+  EFI_HOB_GENERIC_HEADER            Header;
+  ///
+  /// An instance of the EFI_HOB_MEMORY_ALLOCATION_HEADER that describes the
+  /// various attributes of the logical memory allocation.
+  ///
+  EFI_HOB_MEMORY_ALLOCATION_HEADER  AllocDescriptor;
+  //
+  // Additional data pertaining to the "Name" Guid memory
+  // may go here.
+  //
+} EFI_HOB_MEMORY_ALLOCATION;
+
+///
+/// The resource type.
+///
+typedef UINT32 EFI_RESOURCE_TYPE;
+
+//
+// Value of ResourceType in EFI_HOB_RESOURCE_DESCRIPTOR.
+//
+#define EFI_RESOURCE_SYSTEM_MEMORY          0x00000000
+#define EFI_RESOURCE_MEMORY_MAPPED_IO       0x00000001
+#define EFI_RESOURCE_IO                     0x00000002
+#define EFI_RESOURCE_FIRMWARE_DEVICE        0x00000003
+#define EFI_RESOURCE_MEMORY_MAPPED_IO_PORT  0x00000004
+#define EFI_RESOURCE_MEMORY_RESERVED        0x00000005
+#define EFI_RESOURCE_IO_RESERVED            0x00000006
+#define EFI_RESOURCE_MAX_MEMORY_TYPE        0x00000007
+
+///
+/// A type of recount attribute type.
+///
+typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
+
+//
+// These types can be ORed together as needed.
+//
+// The first three enumerations describe settings
+//
+#define EFI_RESOURCE_ATTRIBUTE_PRESENT              0x00000001
+#define EFI_RESOURCE_ATTRIBUTE_INITIALIZED          0x00000002
+#define EFI_RESOURCE_ATTRIBUTE_TESTED               0x00000004
+//
+// The rest of the settings describe capabilities
+//
+#define EFI_RESOURCE_ATTRIBUTE_SINGLE_BIT_ECC           0x00000008
+#define EFI_RESOURCE_ATTRIBUTE_MULTIPLE_BIT_ECC         0x00000010
+#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_1           0x00000020
+#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_2           0x00000040
+#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED           0x00000080
+#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED          0x00000100
+#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED      0x00000200
+#define EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE              0x00000400
+#define EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE        0x00000800
+#define EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE  0x00001000
+#define EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE     0x00002000
+#define EFI_RESOURCE_ATTRIBUTE_16_BIT_IO                0x00004000
+#define EFI_RESOURCE_ATTRIBUTE_32_BIT_IO                0x00008000
+#define EFI_RESOURCE_ATTRIBUTE_64_BIT_IO                0x00010000
+#define EFI_RESOURCE_ATTRIBUTE_UNCACHED_EXPORTED        0x00020000
+
+///
+/// Describes the resource properties of all fixed,
+/// nonrelocatable resource ranges found on the processor
+/// host bus during the HOB producer phase.
+///
+typedef struct {
+  ///
+  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_RESOURCE_DESCRIPTOR.
+  ///
+  EFI_HOB_GENERIC_HEADER      Header;
+  ///
+  /// A GUID representing the owner of the resource. This GUID is used by HOB
+  /// consumer phase components to correlate device ownership of a resource.
+  ///
+  EFI_GUID                    Owner;
+  ///
+  /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
+  ///
+  EFI_RESOURCE_TYPE           ResourceType;
+  ///
+  /// Resource attributes as defined by EFI_RESOURCE_ATTRIBUTE_TYPE.
+  ///
+  EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
+  ///
+  /// The physical start address of the resource region.
+  ///
+  EFI_PHYSICAL_ADDRESS        PhysicalStart;
+  ///
+  /// The number of bytes of the resource region.
+  ///
+  UINT64                      ResourceLength;
+} EFI_HOB_RESOURCE_DESCRIPTOR;
+
+///
+/// Allows writers of executable content in the HOB producer phase to
+/// maintain and manage HOBs with specific GUID.
+///
+typedef struct {
+  ///
+  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_GUID_EXTENSION.
+  ///
+  EFI_HOB_GENERIC_HEADER      Header;
+  ///
+  /// A GUID that defines the contents of this HOB.
+  ///
+  EFI_GUID                    Name;
+  //
+  // Guid specific data goes here
+  //
+} EFI_HOB_GUID_TYPE;
+
+///
+/// Union of all the possible HOB Types.
+///
+typedef union {
+  EFI_HOB_GENERIC_HEADER              *Header;
+  EFI_HOB_MEMORY_ALLOCATION           *MemoryAllocation;
+  EFI_HOB_RESOURCE_DESCRIPTOR         *ResourceDescriptor;
+  EFI_HOB_GUID_TYPE                   *Guid;
+  UINT8                               *Raw;
+} EFI_PEI_HOB_POINTERS;
+
+
+/**
+  Returns the type of a HOB.
+
+  This macro returns the HobType field from the HOB header for the
+  HOB specified by HobStart.
+
+  @param  HobStart   A pointer to a HOB.
+
+  @return HobType.
+
+**/
+#define GET_HOB_TYPE(HobStart) \
+  (((EFI_HOB_GENERIC_HEADER *)(HobStart))->HobType)
+
+/**
+  Returns the length, in bytes, of a HOB.
+
+  This macro returns the HobLength field from the HOB header for the
+  HOB specified by HobStart.
+
+  @param  HobStart   A pointer to a HOB.
+
+  @return HobLength.
+
+**/
+#define GET_HOB_LENGTH(HobStart) \
+  (((EFI_HOB_GENERIC_HEADER *)(HobStart))->HobLength)
+
+/**
+  Returns a pointer to the next HOB in the HOB list.
+
+  This macro returns a pointer to HOB that follows the
+  HOB specified by HobStart in the HOB List.
+
+  @param  HobStart   A pointer to a HOB.
+
+  @return A pointer to the next HOB in the HOB list.
+
+**/
+#define GET_NEXT_HOB(HobStart) \
+  (VOID *)((UINT8 *)(HobStart) + GET_HOB_LENGTH(HobStart))
+
+/**
+  Determines if a HOB is the last HOB in the HOB list.
+
+  This macro determine if the HOB specified by HobStart is the
+  last HOB in the HOB list.  If HobStart is last HOB in the HOB list,
+  then TRUE is returned.  Otherwise, FALSE is returned.
+
+  @param  HobStart   A pointer to a HOB.
+
+  @retval TRUE       The HOB specified by HobStart is the last HOB in the HOB list.
+  @retval FALSE      The HOB specified by HobStart is not the last HOB in the HOB list.
+
+**/
+#define END_OF_HOB_LIST(HobStart)  (GET_HOB_TYPE(HobStart) == (UINT16)EFI_HOB_TYPE_END_OF_HOB_LIST)
+
+/**
+  Returns a pointer to data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
+
+  This macro returns a pointer to the data buffer in a HOB specified by HobStart.
+  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
+
+  @param   GuidHob   A pointer to a HOB.
+
+  @return  A pointer to the data buffer in a HOB.
+
+**/
+#define GET_GUID_HOB_DATA(HobStart) \
+  (VOID *)((UINT8 *)(HobStart) + sizeof(EFI_HOB_GUID_TYPE))
+
+/**
+  Returns the size of the data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
+
+  This macro returns the size, in bytes, of the data buffer in a HOB specified by HobStart.
+  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
+
+  @param   GuidHob   A pointer to a HOB.
+
+  @return  The size of the data buffer.
+**/
+#define GET_GUID_HOB_DATA_SIZE(HobStart) \
+  (UINT16)(GET_HOB_LENGTH(HobStart) - sizeof(EFI_HOB_GUID_TYPE))
+
+/**
+  Returns the pointer to the HOB list.
+
+  This function returns the pointer to first HOB in the list.
+
+  If the pointer to the HOB list is NULL, then ASSERT().
+
+  @return The pointer to the HOB list.
+
+**/
+VOID *
+EFIAPI
+GetHobList (
+  VOID
+  );
+
+/**
+  Returns the next instance of a HOB type from the starting HOB.
+
+  This function searches the first instance of a HOB type from the starting HOB pointer.
+  If there does not exist such HOB type from the starting HOB pointer, it will return NULL.
+  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
+  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
+  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
+
+  If HobStart is NULL, then ASSERT().
+
+  @param  Type          The HOB type to return.
+  @param  HobStart      The starting HOB pointer to search from.
+
+  @return The next instance of a HOB type from the starting HOB.
+
+**/
+VOID *
+EFIAPI
+GetNextHob (
+  UINT16                 Type,
+  CONST VOID             *HobStart
+  );
+
+/**
+  Returns the first instance of a HOB type among the whole HOB list.
+
+  This function searches the first instance of a HOB type among the whole HOB list.
+  If there does not exist such HOB type in the HOB list, it will return NULL.
+
+  If the pointer to the HOB list is NULL, then ASSERT().
+
+  @param  Type          The HOB type to return.
+
+  @return The next instance of a HOB type from the starting HOB.
+
+**/
+VOID *
+EFIAPI
+GetFirstHob (
+  UINT16                 Type
+  );
+
+/**
+  Returns the next instance of the matched GUID HOB from the starting HOB.
+
+  This function searches the first instance of a HOB from the starting HOB pointer.
+  Such HOB should satisfy two conditions:
+  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
+  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
+  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
+  to extract the data section and its size info respectively.
+  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
+  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
+  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
+
+  If Guid is NULL, then ASSERT().
+  If HobStart is NULL, then ASSERT().
+
+  @param  Guid          The GUID to match with in the HOB list.
+  @param  HobStart      A pointer to a Guid.
+
+  @return The next instance of the matched GUID HOB from the starting HOB.
+
+**/
+VOID *
+EFIAPI
+GetNextGuidHob (
+  CONST EFI_GUID         *Guid,
+  CONST VOID             *HobStart
+  );
+
+/**
+  Returns the first instance of the matched GUID HOB among the whole HOB list.
+
+  This function searches the first instance of a HOB among the whole HOB list.
+  Such HOB should satisfy two conditions:
+  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
+  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
+  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
+  to extract the data section and its size info respectively.
+
+  If the pointer to the HOB list is NULL, then ASSERT().
+  If Guid is NULL, then ASSERT().
+
+  @param  Guid          The GUID to match with in the HOB list.
+
+  @return The first instance of the matched GUID HOB among the whole HOB list.
+
+**/
+VOID *
+EFIAPI
+GetFirstGuidHob (
+  CONST EFI_GUID         *Guid
+  );
+
+/**
+  Compares two GUIDs.
+
+  This function compares Guid1 to Guid2.  If the GUIDs are identical then TRUE is returned.
+  If there are any bit differences in the two GUIDs, then FALSE is returned.
+
+  If Guid1 is NULL, then ASSERT().
+  If Guid2 is NULL, then ASSERT().
+
+  @param  Guid1       A pointer to a 128 bit GUID.
+  @param  Guid2       A pointer to a 128 bit GUID.
+
+  @retval TRUE        Guid1 and Guid2 are identical.
+  @retval FALSE       Guid1 and Guid2 are not identical.
+
+**/
+BOOLEAN
+EFIAPI
+CompareGuid (
+  CONST EFI_GUID  *Guid1,
+  CONST EFI_GUID  *Guid2
+  );
+
+/**
+  Reads a 64-bit value from memory that may be unaligned.
+
+  This function returns the 64-bit value pointed to by Buffer. The function
+  guarantees that the read operation does not produce an alignment fault.
+
+  If the Buffer is NULL, then ASSERT().
+
+  @param  Buffer  Pointer to a 64-bit value that may be unaligned.
+
+  @return The 64-bit value read from Buffer.
+
+**/
+UINT64
+EFIAPI
+ReadUnaligned64 (
+  CONST UINT64              *Buffer
+  );
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fspinfoheader.h b/src/vendorcode/intel/fsp1_0/include/fspinfoheader.h
new file mode 100644
index 0000000..28382cf
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspinfoheader.h
@@ -0,0 +1,62 @@
+/*++
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef _FSP_INFO_HEADER_H_
+#define _FSP_INFO_HEADER_H_
+
+#pragma pack(1)
+
+typedef struct  {
+
+  UINT32  Signature;       // Off 0x94
+  UINT32  HeaderLength;
+  UINT8   Reserved1[3];
+  UINT8   HeaderRevision;
+  UINT32  ImageRevision;
+
+  CHAR8   ImageId[8];      // Off 0xA4
+  UINT32  ImageSize;
+  UINT32  ImageBase;
+
+  UINT32  ImageAttribute;  // Off 0xB4
+  UINT32  CfgRegionOffset;
+  UINT32  CfgRegionSize;
+  UINT32  ApiEntryNum;
+
+  UINT32  NemInitEntry;    // Off 0xC4
+  UINT32  FspInitEntry;
+  UINT32  NotifyPhaseEntry;
+  UINT32  Reserved2;
+
+} FSP_INFO_HEADER;
+
+#pragma pack()
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fspplatform.h b/src/vendorcode/intel/fsp1_0/include/fspplatform.h
new file mode 100644
index 0000000..835e153
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspplatform.h
@@ -0,0 +1,149 @@
+/**
+
+Copyright (C) 2013 - 2015, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef _FSP_PLATFORM_H_
+#define _FSP_PLATFORM_H_
+
+#include "fsptypes.h"
+#include "fspapi.h"
+
+//
+// Maximum number of SDRAM channels supported by each CPU
+//
+#define MAX_CHANNELS                 2
+//
+// Maximum number of DIMM sockets supported by each channel
+//
+#define MAX_DIMMS                    2
+
+#pragma pack(1)
+//
+// SPD DDR3 structure
+//
+typedef struct {
+  UINT8  DRAMDeviceType;                 // 2   DRAM Device Type
+  UINT8  ModuleType;                     // 3   Module Type
+  UINT8  SDRAMDensityAndBanks;           // 4   SDRAM Density and Banks
+  UINT8  SDRAMAddressing;                // 5   SDRAM Addressing
+  UINT8  VDD;                            // 6   Module Nominal Voltage
+  UINT8  ModuleOrganization;             // 7   Module Organization
+  UINT8  ModuleMemoryBusWidth;           // 8   Module Memory Bus Width
+  UINT8  TimebaseDividend;               // 10  Medium Timebase (MTB) Dividend
+  UINT8  TimebaseDivisor;                // 11  Medium Timebase (MTB) Divisor
+  UINT8  SDRAMMinimumCycleTime;          // 12  SDRAM Minimum Cycle Time (tCKmin)
+  UINT8  CASLatenciesLSB;                // 14  CAS Latencies Supported, Least Significant Byte
+  UINT8  CASLatenciesMSB;                // 15  CAS Latencies Supported, Most Significant Byte
+  UINT8  MinimumCASLatencyTime;          // 16  Minimum CAS Latency Time (tAAmin)
+  UINT8  MinimumWriteRecoveryTime;       // 17  Minimum Write Recovery Time (tWRmin)
+  UINT8  MinimumRASToCASDelayTime;       // 18  Minimum RAS# to CAS# Delay Time (tRCDmin)
+  UINT8  MinimumRowToRowDelayTime;       // 19  Minimum Row Active to Row Active Delay Time (tRRDmin)
+  UINT8  MinimumRowPrechargeDelayTime;   // 20  Minimum Row Precharge Delay Time (tRPmin)
+  UINT8  UpperNibblesFortRASAndtRC;      // 21  Upper Nibbles for tRAS and tRC
+  UINT8  tRASmin;                        // 22  Minimum Active to Precharge Delay Time (tRASmin), Least Significant Byte
+  UINT8  tRCmin;                         // 23  Minimum Active to Active/Refresh Delay Time (tRCmin), Least Significant Byte
+  UINT8  tRFCminLeastSignificantByte;    // 24  Minimum Refresh Recovery Delay Time (tRFCmin), Least Significant Byte
+  UINT8  tRFCminMostSignificantByte;     // 25  Minimum Refresh Recovery Delay Time (tRFCmin), Most Significant Byte
+  UINT8  tWTRmin;                        // 26  Minimum Internal Write to Read Command Delay Time (tWTRmin)
+  UINT8  tRTPmin;                        // 27  Minimum Internal Read to Precharge Command Delay Time (tRTPmin)
+  UINT8  UpperNibbleFortFAW;             // 28  Upper Nibble for tFAW
+  UINT8  tFAWmin;                        // 29  Minimum Four Activate Window Delay Time (tFAWmin)
+  UINT8  SdramThermalRefreshOption;      // 31  SdramThermalRefreshOption
+  UINT8  ModuleThermalSensor;            // 32  ModuleThermalSensor
+  UINT8  SDRAMDeviceType;                // 33  SDRAM Device Type
+  UINT8  tCKminFine;                     // 34  Fine Offset for SDRAM Minimum Cycle Time (tCKmin)
+  UINT8  tAAminFine;                     // 35  Fine Offset for Minimum CAS Latency Time (tAAmin)
+  UINT8  MACCount;                       // 41  Maximum Activate Count
+  UINT8  ReferenceRawCardUsed;           // 62  Reference Raw Card Used
+  UINT8  AddressMappingEdgeConnector;    // 63  Address Mapping from Edge Connector to DRAM
+  UINT8  ModuleManufacturerIdCodeLsb;    // 117 Module Manufacturer ID Code, Least Significant Byte
+  UINT8  ModuleManufacturerIdCodeMsb;    // 118 Module Manufacturer ID Code, Most Significant Byte
+  UINT8  ModuleManufacturingLocation;    // 119 Module Manufacturing Location
+  UINT8  ModuleManufacturingDateYear;    // 120 Module Manufacturing Date Year
+  UINT8  ModuleManufacturingDateWW;      // 121 Module Manufacturing Date creation work week
+  UINT8  ModuleSerialNumberA;            // 122 Module Serial Number A
+  UINT8  ModuleSerialNumberB;            // 123 Module Serial Number B
+  UINT8  ModuleSerialNumberC;            // 124 Module Serial Number C
+  UINT8  ModuleSerialNumberD;            // 125 Module Serial Number D
+  UINT8  DramManufacturerIdLsb;          // 148 DRAM Manufacturer ID Code, LSB
+  UINT8  DramManufacturerIdMsb;          // 149 DRAM Manufacturer ID Code, MSB
+} MEM_DOWN_DIMM_SPD_DATA;
+
+typedef struct {
+  UINT32   MemoryDownDimmPopulation;  // 0 - Empty, 1 - DIMM populated
+  MEM_DOWN_DIMM_SPD_DATA   MemoryDownDimmSpdData;
+} MEM_DOWN_DIMM_CONFIG;
+
+typedef struct {
+  CONST MEM_DOWN_DIMM_CONFIG  *MemDownDimmConfig[MAX_CHANNELS][MAX_DIMMS];
+} FSP_INIT_RT_PLATFORM_BUFFER;
+
+typedef struct {
+  FSP_INIT_RT_COMMON_BUFFER  Common;
+  FSP_INIT_RT_PLATFORM_BUFFER Platform;
+} FSP_INIT_RT_BUFFER;
+
+#pragma pack()
+
+
+/* TODO move out baytrail stuff */
+
+//
+// Function prototypes for board_fsp.c
+//
+void
+GetFspReservedMemoryFromGuid (
+  uint32_t         *FspMemoryBase,
+  uint32_t         *FspMemoryLength,
+  EFI_GUID          FspReservedMemoryGuid
+  );
+
+void
+GetFspNVStorageMemory (
+  void         **FspNVStorageHob,
+  uint16_t     *DataSize
+  );
+
+void
+GetTempRamStack (
+  void         **TempRamStackPtr,
+  uint16_t     *DataSize
+  );
+
+void
+GetHighMemorySize (
+  uint64_t         *HighMemoryLength
+  );
+
+void
+GetLowMemorySize (
+  uint32_t         *LowMemoryLength
+  );
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fspsupport.h b/src/vendorcode/intel/fsp1_0/include/fspsupport.h
new file mode 100644
index 0000000..e83a630
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fspsupport.h
@@ -0,0 +1,95 @@
+/** @file
+
+Copyright (C) 2013 - 2014, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+**/
+
+#ifndef __FSP_SUPPORT_H__
+#define __FSP_SUPPORT_H__
+
+#include "fsptypes.h"
+#include "fspfv.h"
+#include "fspffs.h"
+#include "fspapi.h"
+#include "fsphob.h"
+#include "fspguid.h"
+#include "fspplatform.h"
+#include "fspinfoheader.h"
+#include "fspbootmode.h"
+#include <fspvpd.h>
+
+UINT32
+GetUsableLowMemTop (
+  CONST VOID             *HobListPtr
+  );
+
+UINT64
+GetUsableHighMemTop (
+  CONST VOID             *HobListPtr
+  );
+
+VOID *
+GetGuidHobDataBuffer (
+  CONST VOID             *HobListPtr,
+  UINT32                 *Length,
+  EFI_GUID               *Guid
+  );
+
+VOID
+GetFspReservedMemoryFromGuid (
+  CONST VOID             *HobListPtr,
+  EFI_PHYSICAL_ADDRESS   *FspMemoryBase,
+  UINT64                 *FspMemoryLength,
+  EFI_GUID               *FspReservedMemoryGuid
+  );
+
+UINT32
+GetTsegReservedMemory (
+  CONST VOID             *HobListPtr,
+  UINT32                 *Length
+);
+
+UINT32
+GetFspReservedMemory (
+  CONST VOID             *HobListPtr,
+  UINT32                 *Length
+);
+
+VOID*
+GetFspNvsDataBuffer (
+  CONST VOID             *HobListPtr,
+  UINT32                 *Length
+  );
+
+VOID *
+GetBootloaderTempMemoryBuffer (
+  CONST VOID             *HobListPtr,
+  UINT32                 *Length
+  );
+
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/include/fsptypes.h b/src/vendorcode/intel/fsp1_0/include/fsptypes.h
new file mode 100644
index 0000000..da19250
--- /dev/null
+++ b/src/vendorcode/intel/fsp1_0/include/fsptypes.h
@@ -0,0 +1,183 @@
+/******************************************************************************
+
+Copyright (C) 2013, Intel Corporation
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice, this
+  list of conditions and the following disclaimer in the documentation and/or
+  other materials provided with the distribution.
+* Neither the name of Intel Corporation nor the names of its contributors may
+  be used to endorse or promote products derived from this software without
+  specific prior written permission.
+
+  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+  THE POSSIBILITY OF SUCH DAMAGE.
+
+ *****************************************************************************/
+
+/** \file  fsptypes.h
+ *
+ *
+ */
+
+#ifndef __FSP_TYPES_H__
+#define __FSP_TYPES_H__
+
+///
+/// 8-byte unsigned value.
+///
+typedef unsigned long long  UINT64;
+///
+/// 8-byte signed value.
+///
+typedef long long           INT64;
+///
+/// 4-byte unsigned value.
+///
+typedef unsigned int        UINT32;
+///
+/// 4-byte signed value.
+///
+typedef int                 INT32;
+///
+/// 2-byte unsigned value.
+///
+typedef unsigned short      UINT16;
+///
+/// 2-byte Character.  Unless otherwise specified all strings are stored in the
+/// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.
+///
+typedef unsigned short      CHAR16;
+///
+/// 2-byte signed value.
+///
+typedef short               INT16;
+///
+/// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other
+/// values are undefined.
+///
+typedef unsigned char       BOOLEAN;
+///
+/// 1-byte unsigned value.
+///
+typedef unsigned char       UINT8;
+///
+/// 1-byte Character
+///
+typedef char                CHAR8;
+///
+/// 1-byte signed value
+///
+typedef char                INT8;
+
+typedef void                VOID;
+
+typedef UINT64              EFI_PHYSICAL_ADDRESS;
+
+typedef struct {
+  UINT32  Data1;
+  UINT16  Data2;
+  UINT16  Data3;
+  UINT8   Data4[8];
+} EFI_GUID;
+
+#define CONST     const
+#define STATIC    static
+
+#define TRUE  ((BOOLEAN)(1==1))
+#define FALSE ((BOOLEAN)(0==1))
+
+static inline void DebugDeadLoop(void) {
+  for (;;);
+}
+
+#define FSPAPI __attribute__((cdecl))
+#define EFIAPI __attribute__((cdecl))
+
+#define _ASSERT(Expression)  DebugDeadLoop()
+#define ASSERT(Expression)      \
+  do {                          \
+    if (!(Expression)) {        \
+      _ASSERT (Expression);     \
+    }                           \
+  } while (FALSE)
+
+typedef UINT32 FSP_STATUS;
+typedef UINT32 EFI_STATUS;
+
+///
+/// Compatiable with EFI_STATUS defined in PI Spec.
+#define FSP_SUCCESS               0
+#define FSP_INVALID_PARAMETER     0x80000002
+#define FSP_UNSUPPORTED           0x80000003
+#define FSP_DEVICE_ERROR          0x80000007
+#define FSP_NOT_FOUND             0x8000000E
+#define FSP_ALREADY_STARTED       0x80000014
+
+/**
+  Returns a 16-bit signature built from 2 ASCII characters.
+
+  This macro returns a 16-bit value built from the two ASCII characters specified
+  by A and B.
+
+  @param  A    The first ASCII character.
+  @param  B    The second ASCII character.
+
+  @return A 16-bit value built from the two ASCII characters specified by A and B.
+
+**/
+#define SIGNATURE_16(A, B)        ((A) | (B << 8))
+
+/**
+  Returns a 32-bit signature built from 4 ASCII characters.
+
+  This macro returns a 32-bit value built from the four ASCII characters specified
+  by A, B, C, and D.
+
+  @param  A    The first ASCII character.
+  @param  B    The second ASCII character.
+  @param  C    The third ASCII character.
+  @param  D    The fourth ASCII character.
+
+  @return A 32-bit value built from the two ASCII characters specified by A, B,
+          C and D.
+
+**/
+#define SIGNATURE_32(A, B, C, D)  (SIGNATURE_16 (A, B) | (SIGNATURE_16 (C, D) << 16))
+
+/**
+  Returns a 64-bit signature built from 8 ASCII characters.
+
+  This macro returns a 64-bit value built from the eight ASCII characters specified
+  by A, B, C, D, E, F, G,and H.
+
+  @param  A    The first ASCII character.
+  @param  B    The second ASCII character.
+  @param  C    The third ASCII character.
+  @param  D    The fourth ASCII character.
+  @param  E    The fifth ASCII character.
+  @param  F    The sixth ASCII character.
+  @param  G    The seventh ASCII character.
+  @param  H    The eighth ASCII character.
+
+  @return A 64-bit value built from the two ASCII characters specified by A, B,
+          C, D, E, F, G and H.
+
+**/
+#define SIGNATURE_64(A, B, C, D, E, F, G, H) \
+    (SIGNATURE_32 (A, B, C, D) | ((UINT64) (SIGNATURE_32 (E, F, G, H)) << 32))
+
+#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspapi.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspapi.h
deleted file mode 100644
index 9520736..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspapi.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_API_H_
-#define _FSP_API_H_
-
-#pragma pack(1)
-
-typedef VOID (* CONTINUATION_PROC)(EFI_STATUS Status, VOID *HobListPtr);
-
-typedef struct {
-  VOID              *NvsBufferPtr;
-  VOID              *RtBufferPtr;
-  CONTINUATION_PROC   ContinuationFunc;
-} FSP_INIT_PARAMS;
-
-typedef struct {
-  UINT32            *StackTop;
-  UINT32             BootMode;
-} FSP_INIT_RT_COMMON_BUFFER;
-
-typedef enum {
-  EnumInitPhaseAfterPciEnumeration = 0x20,
-  EnumInitPhaseReadyToBoot = 0x40
-} FSP_INIT_PHASE;
-
-typedef struct {
-  FSP_INIT_PHASE     Phase;
-} NOTIFY_PHASE_PARAMS;
-
-#pragma pack()
-
-typedef FSP_STATUS (FSPAPI *FSP_FSP_INIT)    (FSP_INIT_PARAMS     *FspInitParamPtr);
-typedef FSP_STATUS (FSPAPI *FSP_NOTFY_PHASE) (NOTIFY_PHASE_PARAMS *NotifyPhaseParamPtr);
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspffs.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspffs.h
deleted file mode 100644
index 7a7c367..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspffs.h
+++ /dev/null
@@ -1,506 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-
-#ifndef __PI_FIRMWARE_FILE_H__
-#define __PI_FIRMWARE_FILE_H__
-
-#pragma pack(1)
-///
-/// Used to verify the integrity of the file.
-///
-typedef union {
-  struct {
-    ///
-    /// The IntegrityCheck.Checksum.Header field is an 8-bit checksum of the file
-    /// header. The State and IntegrityCheck.Checksum.File fields are assumed
-    /// to be zero and the checksum is calculated such that the entire header sums to zero.
-    ///
-    UINT8   Header;
-    ///
-    /// If the FFS_ATTRIB_CHECKSUM (see definition below) bit of the Attributes
-    /// field is set to one, the IntegrityCheck.Checksum.File field is an 8-bit
-    /// checksum of the file data.
-    /// If the FFS_ATTRIB_CHECKSUM bit of the Attributes field is cleared to zero,
-    /// the IntegrityCheck.Checksum.File field must be initialized with a value of
-    /// 0xAA. The IntegrityCheck.Checksum.File field is valid any time the
-    /// EFI_FILE_DATA_VALID bit is set in the State field.
-    ///
-    UINT8   File;
-  } Checksum;
-  ///
-  /// This is the full 16 bits of the IntegrityCheck field.
-  ///
-  UINT16    Checksum16;
-} EFI_FFS_INTEGRITY_CHECK;
-
-///
-/// FFS_FIXED_CHECKSUM is the checksum value used when the
-/// FFS_ATTRIB_CHECKSUM attribute bit is clear.
-///
-#define FFS_FIXED_CHECKSUM  0xAA
-
-typedef UINT8 EFI_FV_FILETYPE;
-typedef UINT8 EFI_FFS_FILE_ATTRIBUTES;
-typedef UINT8 EFI_FFS_FILE_STATE;
-
-///
-/// File Types Definitions
-///
-#define EFI_FV_FILETYPE_ALL                   0x00
-#define EFI_FV_FILETYPE_RAW                   0x01
-#define EFI_FV_FILETYPE_FREEFORM              0x02
-#define EFI_FV_FILETYPE_SECURITY_CORE         0x03
-#define EFI_FV_FILETYPE_PEI_CORE              0x04
-#define EFI_FV_FILETYPE_DXE_CORE              0x05
-#define EFI_FV_FILETYPE_PEIM                  0x06
-#define EFI_FV_FILETYPE_DRIVER                0x07
-#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08
-#define EFI_FV_FILETYPE_APPLICATION           0x09
-#define EFI_FV_FILETYPE_SMM                   0x0A
-#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
-#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
-#define EFI_FV_FILETYPE_SMM_CORE              0x0D
-#define EFI_FV_FILETYPE_OEM_MIN               0xc0
-#define EFI_FV_FILETYPE_OEM_MAX               0xdf
-#define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
-#define EFI_FV_FILETYPE_DEBUG_MAX             0xef
-#define EFI_FV_FILETYPE_FFS_MIN               0xf0
-#define EFI_FV_FILETYPE_FFS_MAX               0xff
-#define EFI_FV_FILETYPE_FFS_PAD               0xf0
-///
-/// FFS File Attributes.
-///
-#define FFS_ATTRIB_LARGE_FILE         0x01
-#define FFS_ATTRIB_FIXED              0x04
-#define FFS_ATTRIB_DATA_ALIGNMENT     0x38
-#define FFS_ATTRIB_CHECKSUM           0x40
-
-///
-/// FFS File State Bits.
-///
-#define EFI_FILE_HEADER_CONSTRUCTION  0x01
-#define EFI_FILE_HEADER_VALID         0x02
-#define EFI_FILE_DATA_VALID           0x04
-#define EFI_FILE_MARKED_FOR_UPDATE    0x08
-#define EFI_FILE_DELETED              0x10
-#define EFI_FILE_HEADER_INVALID       0x20
-
-
-///
-/// Each file begins with the header that describe the
-/// contents and state of the files.
-///
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file.
-  ///
-  EFI_GUID                Name;
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK IntegrityCheck;
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE         Type;
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES Attributes;
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  ///
-  UINT8                   Size[3];
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE      State;
-} EFI_FFS_FILE_HEADER;
-
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file. There may be only
-  /// one instance of a file with the file name GUID of Name in any given firmware
-  /// volume, except if the file type is EFI_FV_FILETYPE_FFS_PAD.
-  ///
-  EFI_GUID                  Name;
-
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK   IntegrityCheck;
-
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE           Type;
-
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES   Attributes;
-
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  /// The length of the file data is either (Size - sizeof(EFI_FFS_FILE_HEADER)). This calculation means a
-  /// zero-length file has a Size of 24 bytes, which is sizeof(EFI_FFS_FILE_HEADER).
-  /// Size is not required to be a multiple of 8 bytes. Given a file F, the next file header is
-  /// located at the next 8-byte aligned firmware volume offset following the last byte of the file F.
-  ///
-  UINT8                     Size[3];
-
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE        State;
-
-  ///
-  /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
-  /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
-  ///
-  UINT32                    ExtendedSize;
-} EFI_FFS_FILE_HEADER2;
-
-#define IS_FFS_FILE2(FfsFileHeaderPtr) \
-    (((((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Attributes) & FFS_ATTRIB_LARGE_FILE) == FFS_ATTRIB_LARGE_FILE)
-
-#define FFS_FILE_SIZE(FfsFileHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Size) & 0x00ffffff))
-
-#define FFS_FILE2_SIZE(FfsFileHeaderPtr) \
-    (((EFI_FFS_FILE_HEADER2 *) (UINTN) FfsFileHeaderPtr)->ExtendedSize)
-
-typedef UINT8 EFI_SECTION_TYPE;
-
-///
-/// Pseudo type. It is used as a wild card when retrieving sections.
-///  The section type EFI_SECTION_ALL matches all section types.
-///
-#define EFI_SECTION_ALL                   0x00
-
-///
-/// Encapsulation section Type values.
-///
-#define EFI_SECTION_COMPRESSION           0x01
-
-#define EFI_SECTION_GUID_DEFINED          0x02
-
-#define EFI_SECTION_DISPOSABLE            0x03
-
-///
-/// Leaf section Type values.
-///
-#define EFI_SECTION_PE32                  0x10
-#define EFI_SECTION_PIC                   0x11
-#define EFI_SECTION_TE                    0x12
-#define EFI_SECTION_DXE_DEPEX             0x13
-#define EFI_SECTION_VERSION               0x14
-#define EFI_SECTION_USER_INTERFACE        0x15
-#define EFI_SECTION_COMPATIBILITY16       0x16
-#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17
-#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18
-#define EFI_SECTION_RAW                   0x19
-#define EFI_SECTION_PEI_DEPEX             0x1B
-#define EFI_SECTION_SMM_DEPEX             0x1C
-
-///
-/// Common section header.
-///
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-  EFI_SECTION_TYPE  Type;
-  ///
-  /// Declares the section type.
-  ///
-} EFI_COMMON_SECTION_HEADER;
-
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-
-  EFI_SECTION_TYPE  Type;
-
-  ///
-  /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
-  /// Size is not equal to 0xFFFFFF, then this field does not exist.
-  ///
-  UINT32            ExtendedSize;
-} EFI_COMMON_SECTION_HEADER2;
-
-///
-/// Leaf section type that contains an
-/// IA-32 16-bit executable image.
-///
-typedef EFI_COMMON_SECTION_HEADER  EFI_COMPATIBILITY16_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_COMPATIBILITY16_SECTION2;
-
-///
-/// CompressionType of EFI_COMPRESSION_SECTION.
-///
-#define EFI_NOT_COMPRESSED        0x00
-#define EFI_STANDARD_COMPRESSION  0x01
-///
-/// An encapsulation section type in which the
-/// section data is compressed.
-///
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                      UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                       CompressionType;
-} EFI_COMPRESSION_SECTION;
-
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                        UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                         CompressionType;
-} EFI_COMPRESSION_SECTION2;
-
-///
-/// An encapsulation section type in which the section data is disposable.
-/// A disposable section is an encapsulation section in which the section data may be disposed of during
-/// the process of creating or updating a firmware image without significant impact on the usefulness of
-/// the file. The Type field in the section header is set to EFI_SECTION_DISPOSABLE. This
-/// allows optional or descriptive data to be included with the firmware file which can be removed in
-/// order to conserve space. The contents of this section are implementation specific, but might contain
-/// debug data or detailed integration instructions.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DISPOSABLE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DISPOSABLE_SECTION2;
-
-///
-/// The leaf section which could be used to determine the dispatch order of DXEs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DXE_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DXE_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a PI FV.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
-
-///
-/// The leaf section which contains a single GUID.
-///
-typedef struct {
-  ///
-  /// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                    SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                      SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
-
-///
-/// Attributes of EFI_GUID_DEFINED_SECTION.
-///
-#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED  0x01
-#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID    0x02
-///
-/// The leaf section which is encapsulation defined by specific GUID.
-///
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                    SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                      DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                      Attributes;
-} EFI_GUID_DEFINED_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                      SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                        DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                        Attributes;
-} EFI_GUID_DEFINED_SECTION2;
-
-///
-/// The leaf section which contains PE32+ image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PE32_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PE32_SECTION2;
-
-///
-/// The leaf section used to determine the dispatch order of PEIMs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PEI_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PEI_DEPEX_SECTION2;
-
-///
-/// A leaf section type that contains a position-independent-code (PIC) image.
-/// A PIC image section is a leaf section that contains a position-independent-code (PIC) image.
-/// In addition to normal PE32+ images that contain relocation information, PEIM executables may be
-/// PIC and are referred to as PIC images. A PIC image is the same as a PE32+ image except that all
-/// relocation information has been stripped from the image and the image can be moved and will
-/// execute correctly without performing any relocation or other fix-ups. EFI_PIC_SECTION2 must
-/// be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PIC_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PIC_SECTION2;
-
-///
-/// The leaf section which constains the position-independent-code image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_TE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_TE_SECTION2;
-
-///
-/// The leaf section which contains an array of zero or more bytes.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_RAW_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_RAW_SECTION2;
-
-///
-/// The SMM dependency expression section is a leaf section that contains a dependency expression that
-/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
-/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
-/// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
-/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
-/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a unicode string that
-/// is human readable file name.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      FileNameString[1];
-} EFI_USER_INTERFACE_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  CHAR16                        FileNameString[1];
-} EFI_USER_INTERFACE_SECTION2;
-
-///
-/// The leaf section which contains a numeric build number and
-/// an optional unicode string that represents the file revision.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  UINT16                      BuildNumber;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      VersionString[1];
-} EFI_VERSION_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// A UINT16 that represents a particular build. Subsequent builds have monotonically
-  /// increasing build numbers relative to earlier builds.
-  ///
-  UINT16                        BuildNumber;
-  CHAR16                        VersionString[1];
-} EFI_VERSION_SECTION2;
-
-#define IS_SECTION2(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff) == 0x00ffffff)
-
-#define SECTION_SIZE(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff))
-
-#define SECTION2_SIZE(SectionHeaderPtr) \
-    (((EFI_COMMON_SECTION_HEADER2 *) (UINTN) SectionHeaderPtr)->ExtendedSize)
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspfv.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspfv.h
deleted file mode 100644
index 75d17fa..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspfv.h
+++ /dev/null
@@ -1,247 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_FIRMWAREVOLUME_H__
-#define __PI_FIRMWAREVOLUME_H__
-
-///
-/// EFI_FV_FILE_ATTRIBUTES
-///
-typedef UINT32  EFI_FV_FILE_ATTRIBUTES;
-
-//
-// Value of EFI_FV_FILE_ATTRIBUTES.
-//
-#define EFI_FV_FILE_ATTRIB_ALIGNMENT      0x0000001F
-#define EFI_FV_FILE_ATTRIB_FIXED          0x00000100
-#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED  0x00000200
-
-///
-/// type of EFI FVB attribute
-///
-typedef UINT32  EFI_FVB_ATTRIBUTES_2;
-
-//
-// Attributes bit definitions
-//
-#define EFI_FVB2_READ_DISABLED_CAP  0x00000001
-#define EFI_FVB2_READ_ENABLED_CAP   0x00000002
-#define EFI_FVB2_READ_STATUS        0x00000004
-#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
-#define EFI_FVB2_WRITE_ENABLED_CAP  0x00000010
-#define EFI_FVB2_WRITE_STATUS       0x00000020
-#define EFI_FVB2_LOCK_CAP           0x00000040
-#define EFI_FVB2_LOCK_STATUS        0x00000080
-#define EFI_FVB2_STICKY_WRITE       0x00000200
-#define EFI_FVB2_MEMORY_MAPPED      0x00000400
-#define EFI_FVB2_ERASE_POLARITY     0x00000800
-#define EFI_FVB2_READ_LOCK_CAP      0x00001000
-#define EFI_FVB2_READ_LOCK_STATUS   0x00002000
-#define EFI_FVB2_WRITE_LOCK_CAP     0x00004000
-#define EFI_FVB2_WRITE_LOCK_STATUS  0x00008000
-#define EFI_FVB2_ALIGNMENT          0x001F0000
-#define EFI_FVB2_ALIGNMENT_1        0x00000000
-#define EFI_FVB2_ALIGNMENT_2        0x00010000
-#define EFI_FVB2_ALIGNMENT_4        0x00020000
-#define EFI_FVB2_ALIGNMENT_8        0x00030000
-#define EFI_FVB2_ALIGNMENT_16       0x00040000
-#define EFI_FVB2_ALIGNMENT_32       0x00050000
-#define EFI_FVB2_ALIGNMENT_64       0x00060000
-#define EFI_FVB2_ALIGNMENT_128      0x00070000
-#define EFI_FVB2_ALIGNMENT_256      0x00080000
-#define EFI_FVB2_ALIGNMENT_512      0x00090000
-#define EFI_FVB2_ALIGNMENT_1K       0x000A0000
-#define EFI_FVB2_ALIGNMENT_2K       0x000B0000
-#define EFI_FVB2_ALIGNMENT_4K       0x000C0000
-#define EFI_FVB2_ALIGNMENT_8K       0x000D0000
-#define EFI_FVB2_ALIGNMENT_16K      0x000E0000
-#define EFI_FVB2_ALIGNMENT_32K      0x000F0000
-#define EFI_FVB2_ALIGNMENT_64K      0x00100000
-#define EFI_FVB2_ALIGNMENT_128K     0x00110000
-#define EFI_FVB2_ALIGNMENT_256K     0x00120000
-#define EFI_FVB2_ALIGNMENT_512K     0x00130000
-#define EFI_FVB2_ALIGNMENT_1M       0x00140000
-#define EFI_FVB2_ALIGNMENT_2M       0x00150000
-#define EFI_FVB2_ALIGNMENT_4M       0x00160000
-#define EFI_FVB2_ALIGNMENT_8M       0x00170000
-#define EFI_FVB2_ALIGNMENT_16M      0x00180000
-#define EFI_FVB2_ALIGNMENT_32M      0x00190000
-#define EFI_FVB2_ALIGNMENT_64M      0x001A0000
-#define EFI_FVB2_ALIGNMENT_128M     0x001B0000
-#define EFI_FVB2_ALIGNMENT_256M     0x001C0000
-#define EFI_FVB2_ALIGNMENT_512M     0x001D0000
-#define EFI_FVB2_ALIGNMENT_1G       0x001E0000
-#define EFI_FVB2_ALIGNMENT_2G       0x001F0000
-
-
-typedef struct {
-  ///
-  /// The number of sequential blocks which are of the same size.
-  ///
-  UINT32 NumBlocks;
-  ///
-  /// The size of the blocks.
-  ///
-  UINT32 Length;
-} EFI_FV_BLOCK_MAP_ENTRY;
-
-///
-/// Describes the features and layout of the firmware volume.
-///
-typedef struct {
-  ///
-  /// The first 16 bytes are reserved to allow for the reset vector of
-  /// processors whose reset vector is at address 0.
-  ///
-  UINT8                     ZeroVector[16];
-  ///
-  /// Declares the file system with which the firmware volume is formatted.
-  ///
-  EFI_GUID                  FileSystemGuid;
-  ///
-  /// Length in bytes of the complete firmware volume, including the header.
-  ///
-  UINT64                    FvLength;
-  ///
-  /// Set to EFI_FVH_SIGNATURE
-  ///
-  UINT32                    Signature;
-  ///
-  /// Declares capabilities and power-on defaults for the firmware volume.
-  ///
-  EFI_FVB_ATTRIBUTES_2      Attributes;
-  ///
-  /// Length in bytes of the complete firmware volume header.
-  ///
-  UINT16                    HeaderLength;
-  ///
-  /// A 16-bit checksum of the firmware volume header. A valid header sums to zero.
-  ///
-  UINT16                    Checksum;
-  ///
-  /// Offset, relative to the start of the header, of the extended header
-  /// (EFI_FIRMWARE_VOLUME_EXT_HEADER) or zero if there is no extended header.
-  ///
-  UINT16                    ExtHeaderOffset;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT8                     Reserved[1];
-  ///
-  /// Set to 2. Future versions of this specification may define new header fields and will
-  /// increment the Revision field accordingly.
-  ///
-  UINT8                     Revision;
-  ///
-  /// An array of run-length encoded FvBlockMapEntry structures. The array is
-  /// terminated with an entry of {0,0}.
-  ///
-  EFI_FV_BLOCK_MAP_ENTRY    BlockMap[1];
-} EFI_FIRMWARE_VOLUME_HEADER;
-
-#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
-
-///
-/// Firmware Volume Header Revision definition
-///
-#define EFI_FVH_REVISION  0x02
-
-///
-/// Extension header pointed by ExtHeaderOffset of volume header.
-///
-typedef struct {
-  ///
-  /// Firmware volume name.
-  ///
-  EFI_GUID  FvName;
-  ///
-  /// Size of the rest of the extension header, including this structure.
-  ///
-  UINT32    ExtHeaderSize;
-} EFI_FIRMWARE_VOLUME_EXT_HEADER;
-
-///
-/// Entry struture for describing FV extension header
-///
-typedef struct {
-  ///
-  /// Size of this header extension.
-  ///
-  UINT16    ExtEntrySize;
-  ///
-  /// Type of the header.
-  ///
-  UINT16    ExtEntryType;
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY;
-
-#define EFI_FV_EXT_TYPE_OEM_TYPE  0x01
-///
-/// This extension header provides a mapping between a GUID and an OEM file type.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr;
-  ///
-  /// A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31). If a bit
-  /// is '1', then the GUID entry exists in Types. If a bit is '0' then no GUID entry exists in Types.
-  ///
-  UINT32    TypeMask;
-  ///
-  /// An array of GUIDs, each GUID representing an OEM file type.
-  ///
-  /// EFI_GUID  Types[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_OEM_TYPE;
-
-#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
-
-///
-/// This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific
-/// GUID FormatType type which includes a length and a successive series of data bytes.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY     Hdr;
-  ///
-  /// Vendor-specific GUID.
-  ///
-  EFI_GUID                          FormatType;
-  ///
-  /// An arry of bytes of length Length.
-  ///
-  /// UINT8                             Data[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fsphob.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fsphob.h
deleted file mode 100644
index 5840907..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fsphob.h
+++ /dev/null
@@ -1,507 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_HOB_H__
-#define __PI_HOB_H__
-
-//
-// HobType of EFI_HOB_GENERIC_HEADER.
-//
-#define EFI_HOB_TYPE_MEMORY_ALLOCATION    0x0002
-#define EFI_HOB_TYPE_RESOURCE_DESCRIPTOR  0x0003
-#define EFI_HOB_TYPE_GUID_EXTENSION       0x0004
-#define EFI_HOB_TYPE_UNUSED               0xFFFE
-#define EFI_HOB_TYPE_END_OF_HOB_LIST      0xFFFF
-
-///
-/// Describes the format and size of the data inside the HOB.
-/// All HOBs must contain this generic HOB header.
-///
-typedef struct {
-  ///
-  /// Identifies the HOB data structure type.
-  ///
-  UINT16    HobType;
-  ///
-  /// The length in bytes of the HOB.
-  ///
-  UINT16    HobLength;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT32    Reserved;
-} EFI_HOB_GENERIC_HEADER;
-
-///
-/// Enumeration of memory types introduced in UEFI.
-///
-typedef enum {
-  ///
-  /// Not used.
-  ///
-  EfiReservedMemoryType,
-  ///
-  /// The code portions of a loaded application.
-  /// (Note that UEFI OS loaders are UEFI applications.)
-  ///
-  EfiLoaderCode,
-  ///
-  /// The data portions of a loaded application and the default data allocation
-  /// type used by an application to allocate pool memory.
-  ///
-  EfiLoaderData,
-  ///
-  /// The code portions of a loaded Boot Services Driver.
-  ///
-  EfiBootServicesCode,
-  ///
-  /// The data portions of a loaded Boot Serves Driver, and the default data
-  /// allocation type used by a Boot Services Driver to allocate pool memory.
-  ///
-  EfiBootServicesData,
-  ///
-  /// The code portions of a loaded Runtime Services Driver.
-  ///
-  EfiRuntimeServicesCode,
-  ///
-  /// The data portions of a loaded Runtime Services Driver and the default
-  /// data allocation type used by a Runtime Services Driver to allocate pool memory.
-  ///
-  EfiRuntimeServicesData,
-  ///
-  /// Free (unallocated) memory.
-  ///
-  EfiConventionalMemory,
-  ///
-  /// Memory in which errors have been detected.
-  ///
-  EfiUnusableMemory,
-  ///
-  /// Memory that holds the ACPI tables.
-  ///
-  EfiACPIReclaimMemory,
-  ///
-  /// Address space reserved for use by the firmware.
-  ///
-  EfiACPIMemoryNVS,
-  ///
-  /// Used by system firmware to request that a memory-mapped IO region
-  /// be mapped by the OS to a virtual address so it can be accessed by EFI runtime services.
-  ///
-  EfiMemoryMappedIO,
-  ///
-  /// System memory-mapped IO region that is used to translate memory
-  /// cycles to IO cycles by the processor.
-  ///
-  EfiMemoryMappedIOPortSpace,
-  ///
-  /// Address space reserved by the firmware for code that is part of the processor.
-  ///
-  EfiPalCode,
-  EfiMaxMemoryType
-} EFI_MEMORY_TYPE;
-
-///
-/// EFI_HOB_MEMORY_ALLOCATION_HEADER describes the
-/// various attributes of the logical memory allocation. The type field will be used for
-/// subsequent inclusion in the UEFI memory map.
-///
-typedef struct {
-  ///
-  /// A GUID that defines the memory allocation region's type and purpose, as well as
-  /// other fields within the memory allocation HOB. This GUID is used to define the
-  /// additional data within the HOB that may be present for the memory allocation HOB.
-  /// Type EFI_GUID is defined in InstallProtocolInterface() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_GUID              Name;
-
-  ///
-  /// The base address of memory allocated by this HOB. Type
-  /// EFI_PHYSICAL_ADDRESS is defined in AllocatePages() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_PHYSICAL_ADDRESS  MemoryBaseAddress;
-
-  ///
-  /// The length in bytes of memory allocated by this HOB.
-  ///
-  UINT64                MemoryLength;
-
-  ///
-  /// Defines the type of memory allocated by this HOB. The memory type definition
-  /// follows the EFI_MEMORY_TYPE definition. Type EFI_MEMORY_TYPE is defined
-  /// in AllocatePages() in the UEFI 2.0 specification.
-  ///
-  EFI_MEMORY_TYPE       MemoryType;
-
-  ///
-  /// Padding for Itanium processor family
-  ///
-  UINT8                 Reserved[4];
-} EFI_HOB_MEMORY_ALLOCATION_HEADER;
-
-///
-/// Describes all memory ranges used during the HOB producer
-/// phase that exist outside the HOB list. This HOB type
-/// describes how memory is used, not the physical attributes of memory.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_MEMORY_ALLOCATION.
-  ///
-  EFI_HOB_GENERIC_HEADER            Header;
-  ///
-  /// An instance of the EFI_HOB_MEMORY_ALLOCATION_HEADER that describes the
-  /// various attributes of the logical memory allocation.
-  ///
-  EFI_HOB_MEMORY_ALLOCATION_HEADER  AllocDescriptor;
-  //
-  // Additional data pertaining to the "Name" Guid memory
-  // may go here.
-  //
-} EFI_HOB_MEMORY_ALLOCATION;
-
-///
-/// The resource type.
-///
-typedef UINT32 EFI_RESOURCE_TYPE;
-
-//
-// Value of ResourceType in EFI_HOB_RESOURCE_DESCRIPTOR.
-//
-#define EFI_RESOURCE_SYSTEM_MEMORY          0x00000000
-#define EFI_RESOURCE_MEMORY_MAPPED_IO       0x00000001
-#define EFI_RESOURCE_IO                     0x00000002
-#define EFI_RESOURCE_FIRMWARE_DEVICE        0x00000003
-#define EFI_RESOURCE_MEMORY_MAPPED_IO_PORT  0x00000004
-#define EFI_RESOURCE_MEMORY_RESERVED        0x00000005
-#define EFI_RESOURCE_IO_RESERVED            0x00000006
-#define EFI_RESOURCE_MAX_MEMORY_TYPE        0x00000007
-
-///
-/// A type of recount attribute type.
-///
-typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
-
-//
-// These types can be ORed together as needed.
-//
-// The first three enumerations describe settings
-//
-#define EFI_RESOURCE_ATTRIBUTE_PRESENT              0x00000001
-#define EFI_RESOURCE_ATTRIBUTE_INITIALIZED          0x00000002
-#define EFI_RESOURCE_ATTRIBUTE_TESTED               0x00000004
-//
-// The rest of the settings describe capabilities
-//
-#define EFI_RESOURCE_ATTRIBUTE_SINGLE_BIT_ECC           0x00000008
-#define EFI_RESOURCE_ATTRIBUTE_MULTIPLE_BIT_ECC         0x00000010
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_1           0x00000020
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_2           0x00000040
-#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED           0x00000080
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED          0x00000100
-#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED      0x00000200
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE              0x00000400
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE        0x00000800
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE  0x00001000
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE     0x00002000
-#define EFI_RESOURCE_ATTRIBUTE_16_BIT_IO                0x00004000
-#define EFI_RESOURCE_ATTRIBUTE_32_BIT_IO                0x00008000
-#define EFI_RESOURCE_ATTRIBUTE_64_BIT_IO                0x00010000
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHED_EXPORTED        0x00020000
-
-///
-/// Describes the resource properties of all fixed,
-/// nonrelocatable resource ranges found on the processor
-/// host bus during the HOB producer phase.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_RESOURCE_DESCRIPTOR.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID representing the owner of the resource. This GUID is used by HOB
-  /// consumer phase components to correlate device ownership of a resource.
-  ///
-  EFI_GUID                    Owner;
-  ///
-  /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
-  ///
-  EFI_RESOURCE_TYPE           ResourceType;
-  ///
-  /// Resource attributes as defined by EFI_RESOURCE_ATTRIBUTE_TYPE.
-  ///
-  EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
-  ///
-  /// The physical start address of the resource region.
-  ///
-  EFI_PHYSICAL_ADDRESS        PhysicalStart;
-  ///
-  /// The number of bytes of the resource region.
-  ///
-  UINT64                      ResourceLength;
-} EFI_HOB_RESOURCE_DESCRIPTOR;
-
-///
-/// Allows writers of executable content in the HOB producer phase to
-/// maintain and manage HOBs with specific GUID.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_GUID_EXTENSION.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID that defines the contents of this HOB.
-  ///
-  EFI_GUID                    Name;
-  //
-  // Guid specific data goes here
-  //
-} EFI_HOB_GUID_TYPE;
-
-///
-/// Union of all the possible HOB Types.
-///
-typedef union {
-  EFI_HOB_GENERIC_HEADER              *Header;
-  EFI_HOB_MEMORY_ALLOCATION           *MemoryAllocation;
-  EFI_HOB_RESOURCE_DESCRIPTOR         *ResourceDescriptor;
-  EFI_HOB_GUID_TYPE                   *Guid;
-  UINT8                               *Raw;
-} EFI_PEI_HOB_POINTERS;
-
-
-/**
-  Returns the type of a HOB.
-
-  This macro returns the HobType field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobType.
-
-**/
-#define GET_HOB_TYPE(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobType)
-
-/**
-  Returns the length, in bytes, of a HOB.
-
-  This macro returns the HobLength field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobLength.
-
-**/
-#define GET_HOB_LENGTH(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobLength)
-
-/**
-  Returns a pointer to the next HOB in the HOB list.
-
-  This macro returns a pointer to HOB that follows the
-  HOB specified by HobStart in the HOB List.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return A pointer to the next HOB in the HOB list.
-
-**/
-#define GET_NEXT_HOB(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + GET_HOB_LENGTH (HobStart))
-
-/**
-  Determines if a HOB is the last HOB in the HOB list.
-
-  This macro determine if the HOB specified by HobStart is the
-  last HOB in the HOB list.  If HobStart is last HOB in the HOB list,
-  then TRUE is returned.  Otherwise, FALSE is returned.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @retval TRUE       The HOB specified by HobStart is the last HOB in the HOB list.
-  @retval FALSE      The HOB specified by HobStart is not the last HOB in the HOB list.
-
-**/
-#define END_OF_HOB_LIST(HobStart)  (GET_HOB_TYPE (HobStart) == (UINT16)EFI_HOB_TYPE_END_OF_HOB_LIST)
-
-/**
-  Returns a pointer to data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns a pointer to the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  A pointer to the data buffer in a HOB.
-
-**/
-#define GET_GUID_HOB_DATA(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the size of the data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns the size, in bytes, of the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  The size of the data buffer.
-**/
-#define GET_GUID_HOB_DATA_SIZE(HobStart) \
-  (UINT16)(GET_HOB_LENGTH (HobStart) - sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the pointer to the HOB list.
-
-  This function returns the pointer to first HOB in the list.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @return The pointer to the HOB list.
-
-**/
-VOID *
-EFIAPI
-GetHobList (
-  VOID
-  );
-
-/**
-  Returns the next instance of a HOB type from the starting HOB.
-
-  This function searches the first instance of a HOB type from the starting HOB pointer.
-  If there does not exist such HOB type from the starting HOB pointer, it will return NULL.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If HobStart is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-  @param  HobStart      The starting HOB pointer to search from.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextHob (
-  UINT16                 Type,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of a HOB type among the whole HOB list.
-
-  This function searches the first instance of a HOB type among the whole HOB list.
-  If there does not exist such HOB type in the HOB list, it will return NULL.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetFirstHob (
-  UINT16                 Type
-  );
-
-/**
-  Returns the next instance of the matched GUID HOB from the starting HOB.
-
-  This function searches the first instance of a HOB from the starting HOB pointer.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If Guid is NULL, then ASSERT().
-  If HobStart is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-  @param  HobStart      A pointer to a Guid.
-
-  @return The next instance of the matched GUID HOB from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextGuidHob (
-  CONST EFI_GUID         *Guid,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of the matched GUID HOB among the whole HOB list.
-
-  This function searches the first instance of a HOB among the whole HOB list.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-  If Guid is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-
-  @return The first instance of the matched GUID HOB among the whole HOB list.
-
-**/
-VOID *
-EFIAPI
-GetFirstGuidHob (
-  CONST EFI_GUID         *Guid
-  );
-
-BOOLEAN
-EFIAPI
-CompareGuid (
-  CONST EFI_GUID  *Guid1,
-  CONST EFI_GUID  *Guid2
-  );
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspinfoheader.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspinfoheader.h
deleted file mode 100644
index 0f7b3a9..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspinfoheader.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_INFO_HEADER_H_
-#define _FSP_INFO_HEADER_H_
-
-#pragma pack(1)
-
-typedef struct  {
-
-  UINT32  Signature;       // Off 0x94
-  UINT32  HeaderLength;
-  UINT8   Reserved1[3];
-  UINT8   HeaderRevision;
-  UINT32  ImageRevision;
-
-  CHAR8   ImageId[8];      // Off 0xA4
-  UINT32  ImageSize;
-  UINT32  ImageBase;
-
-  UINT32  ImageAttribute;  // Off 0xB4
-  UINT32  CfgRegionOffset;
-  UINT32  CfgRegionSize;
-  UINT32  ApiEntryNum;
-
-  UINT32  NemInitEntry;    // Off 0xC4
-  UINT32  FspInitEntry;
-  UINT32  NotifyPhaseEntry;
-  UINT32  Reserved2;
-
-} FSP_INFO_HEADER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspplatform.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspplatform.h
deleted file mode 100644
index 06cf67e..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fspplatform.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_PLATFORM_H_
-#define _FSP_PLATFORM_H_
-
-#include "fsptypes.h"
-#include "fspapi.h"
-#include "mem_config.h"
-
-#pragma pack(1)
-
-typedef struct {
-    MEM_CONFIG  *MemoryConfig;
-} FSP_INIT_RT_PLATFORM_BUFFER;
-
-typedef struct {
-    uint8_t  HTEnable;
-    uint8_t  TurboEnable;
-    uint8_t  MemoryDownEnable;
-    uint8_t  FastBootEnable;
-} PLATFORM_CONFIG;
-
-typedef struct {
-    const PLATFORM_CONFIG  *PlatformConfig;
-} FSP_INIT_RT_CONFIG_BUFFER;
-
-typedef struct {
-    FSP_INIT_RT_COMMON_BUFFER  Common;
-    FSP_INIT_RT_CONFIG_BUFFER  PlatformConfiguration;
-    FSP_INIT_RT_PLATFORM_BUFFER  Platform;
-} FSP_INIT_RT_BUFFER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fsptypes.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fsptypes.h
deleted file mode 100644
index a3a54c0..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/fsptypes.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-/** \file  fsptypes.h
- *
- *
- */
-
-#ifndef __FSP_TYPES_H__
-#define __FSP_TYPES_H__
-
-///
-/// 8-byte unsigned value.
-///
-typedef unsigned long long  UINT64;
-///
-/// 8-byte signed value.
-///
-typedef long long           INT64;
-///
-/// 4-byte unsigned value.
-///
-typedef unsigned int        UINT32;
-///
-/// 4-byte signed value.
-///
-typedef int                 INT32;
-///
-/// 2-byte unsigned value.
-///
-typedef unsigned short      UINT16;
-///
-/// 2-byte Character.  Unless otherwise specified all strings are stored in the
-/// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.
-///
-typedef unsigned short      CHAR16;
-///
-/// 2-byte signed value.
-///
-typedef short               INT16;
-///
-/// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other
-/// values are undefined.
-///
-typedef unsigned char       BOOLEAN;
-///
-/// 1-byte unsigned value.
-///
-typedef unsigned char       UINT8;
-///
-/// 1-byte Character
-///
-typedef char                CHAR8;
-///
-/// 1-byte signed value
-///
-typedef char                INT8;
-
-typedef void                VOID;
-
-typedef UINT64              EFI_PHYSICAL_ADDRESS;
-
-typedef struct {
-  UINT32  Data1;
-  UINT16  Data2;
-  UINT16  Data3;
-  UINT8   Data4[8];
-} EFI_GUID;
-
-#define CONST     const
-#define STATIC    static
-
-#define TRUE  ((BOOLEAN)(1==1))
-#define FALSE ((BOOLEAN)(0==1))
-
-#define FSPAPI __attribute__((cdecl))
-#define EFIAPI __attribute__((cdecl))
-
-#define ASSERT(Expression)      \
-  do {                          \
-    if (!(Expression)) {        \
-      for (;;);                 \
-    }                           \
-  } while (FALSE)
-
-typedef UINT32 FSP_STATUS;
-typedef UINT32 EFI_STATUS;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/mem_config.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/mem_config.h
deleted file mode 100644
index 26deb90..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/mem_config.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-//
-// mem_config.h
-//
-
-#ifndef _MEM_CONFIG_H_
-#define _MEM_CONFIG_H_
-
-typedef enum {
-  fi1067_IVB=0,
-  fi1333_IVB,
-  fi1400_IVB,
-  fi1600_IVB,
-  fi1800_IVB,
-  fi1867_IVB,
-  fi2000_IVB,
-  fi2133_IVB,
-  fi2200_IVB,
-  fi2400_IVB,
-  fi2600_IVB,
-  fi2667_IVB,
-  fi2800_IVB,
-  fiUnsupport_IVB,
-}TFrequencyIndex_IVB;
-
-#define NUM_IVB_MEM_CLK_FREQUENCIES 13
-
-// DDR3 memory SPD data
-//
-// NOTE: This only includes the SPD bytes that are relevant to the MRC
-typedef struct {                             // BYTE
-    uint8_t  SPDGeneral;                     // 0   Number of Serial PD Bytes Written / SPD Device Size / CRC Coverage 1, 2
-    uint8_t  SPDRevision;                    // 1   SPD Revision
-    uint8_t  DRAMDeviceType;                 // 2   DRAM Device Type
-    uint8_t  ModuleType;                     // 3   Module Type
-    uint8_t  SDRAMDensityAndBanks;           // 4   SDRAM Density and Banks
-    uint8_t  SDRAMAddressing;                // 5   SDRAM Addressing
-    uint8_t  VDD;                            // 6   Module Nominal Voltage
-    uint8_t  ModuleOrganization;             // 7   Module Organization
-    uint8_t  ModuleMemoryBusWidth;           // 8   Module Memory Bus Width
-    uint8_t  FineTimebase;                   // 9   Fine Timebase (FTB) Dividend / Divisor
-    uint8_t  TimebaseDividend;               // 10  Medium Timebase (MTB) Dividend
-    uint8_t  TimebaseDivisor;                // 11  Medium Timebase (MTB) Divisor
-    uint8_t  SDRAMMinimumCycleTime;          // 12  SDRAM Minimum Cycle Time (tCKmin)
-    uint8_t  Reserved0;                      // 13  Reserved0
-    uint8_t  CASLatenciesLSB;                // 14  CAS Latencies Supported, Least Significant Byte
-    uint8_t  CASLatenciesMSB;                // 15  CAS Latencies Supported, Most Significant Byte
-    uint8_t  MinimumCASLatencyTime;          // 16  Minimum CAS Latency Time (tAAmin)
-    uint8_t  MinimumWriteRecoveryTime;       // 17  Minimum Write Recovery Time (tWRmin)
-    uint8_t  MinimumRASToCASDelayTime;       // 18  Minimum RAS# to CAS# Delay Time (tRCDmin)
-    uint8_t  MinimumRowToRowDelayTime;       // 19  Minimum Row Active to Row Active Delay Time (tRRDmin)
-    uint8_t  MinimumRowPrechargeDelayTime;   // 20  Minimum Row Precharge Delay Time (tRPmin)
-    uint8_t  UpperNibblesFortRASAndtRC;      // 21  Upper Nibbles for tRAS and tRC
-    uint8_t  tRASmin;                        // 22  Minimum Active to Precharge Delay Time (tRASmin), Least Significant Byte
-    uint8_t  tRCmin;                         // 23  Minimum Active to Active/Refresh Delay Time (tRCmin), Least Significant Byte
-    uint8_t  tRFCminLeastSignificantByte;    // 24  Minimum Refresh Recovery Delay Time (tRFCmin), Least Significant Byte
-    uint8_t  tRFCminMostSignificantByte;     // 25  Minimum Refresh Recovery Delay Time (tRFCmin), Most Significant Byte
-    uint8_t  tWTRmin;                        // 26  Minimum Internal Write to Read Command Delay Time (tWTRmin)
-    uint8_t  tRTPmin;                        // 27  Minimum Internal Read to Precharge Command Delay Time (tRTPmin)
-    uint8_t  UpperNibbleFortFAW;             // 28  Upper Nibble for tFAW
-    uint8_t  tFAWmin;                        // 29  Minimum Four Activate Window Delay Time (tFAWmin)
-    uint8_t  SDRAMOptionalFeatures;          // 30  SDRAM Optional Features
-    uint8_t  SDRAMThermalAndRefreshOptions;  // 31  SDRAMThermalAndRefreshOptions
-    uint8_t  ModuleThermalSensor;            // 32  ModuleThermalSensor
-    uint8_t  SDRAMDeviceType;                // 33  SDRAM Device Type
-    int8_t   tCKminFine;                     // 34  Fine Offset for SDRAM Minimum Cycle Time (tCKmin)
-    int8_t   tAAminFine;                     // 35  Fine Offset for Minimum CAS Latency Time (tAAmin)
-    int8_t   tRCDminFine;                    // 36  Fine Offset for Minimum RAS# to CAS# Delay Time (tRCDmin)
-    int8_t   tRPminFine;                     // 37  Fine Offset for Minimum Row Precharge Delay Time (tRPmin)
-    int8_t   tRCminFine;                     // 38  Fine Offset for Minimum Active to Active/Refresh Delay Time (tRCmin)
-    uint8_t  ReferenceRawCardUsed;           // 62  Reference Raw Card Used
-    uint8_t  AddressMappingEdgeConnector;    // 63  Address Mapping from Edge Connector to DRAM
-    uint8_t  ThermalHeatSpreaderSolution;    // 64  ThermalHeatSpreaderSolution
-    uint8_t  ModuleManufacturerIdCodeLsb;    // 117 Module Manufacturer ID Code, Least Significant Byte
-    uint8_t  ModuleManufacturerIdCodeMsb;    // 118 Module Manufacturer ID Code, Most Significant Byte
-    uint8_t  ModuleManufacturingLocation;    // 119 Module Manufacturing Location
-    uint8_t  ModuleManufacturingDateYear;    // 120 Module Manufacturing Date Year
-    uint8_t  ModuleManufacturingDateWW;      // 121 Module Manufacturing Date creation work week
-    uint8_t  ModuleSerialNumberA;            // 122 Module Serial Number A
-    uint8_t  ModuleSerialNumberB;            // 123 Module Serial Number B
-    uint8_t  ModuleSerialNumberC;            // 124 Module Serial Number C
-    uint8_t  ModuleSerialNumberD;            // 125 Module Serial Number D
-    uint8_t  CRCA;                           // 126 CRC A
-    uint8_t  CRCB;                           // 127 CRC B
-} DDR3_SPD;
-
-// Configuration for each memory channel/bank
-typedef struct {
-    uint32_t  Exists;
-    DDR3_SPD  SpdData;
-    uint8_t   InitClkPiValue[NUM_IVB_MEM_CLK_FREQUENCIES];
-} MEM_BANK_CONFIG;
-
-// Memory configuration
-typedef struct {
-    MEM_BANK_CONFIG  ChannelABank0;
-    MEM_BANK_CONFIG  ChannelABank1;
-    MEM_BANK_CONFIG  ChannelBBank0;
-    MEM_BANK_CONFIG  ChannelBBank1;
-} MEM_CONFIG;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/peifsp.h b/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/peifsp.h
deleted file mode 100644
index dc3e60f..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_bd82x6x/include/peifsp.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-/** \file  peifsp.h
- *
- *
- */
-#include <stdint.h>
-#include "fsptypes.h"
-#include "fspfv.h"
-#include "fspffs.h"
-#include "fsphob.h"
-#include "fspapi.h"
-#include "fspplatform.h"
-#include "fspinfoheader.h"
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspapi.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspapi.h
deleted file mode 100644
index 18a1582..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspapi.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
-
-Copyright (c) 2008 - 2013, Intel Corporation. All rights reserved.
-This software and associated documentation (if any) is furnished
-under a license and may only be used or copied in accordance
-with the terms of the license. Except as permitted by such
-license, no part of this software or documentation 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.
-
-**/
-
-#ifndef _FSP_API_H_
-#define _FSP_API_H_
-
-#pragma pack(1)
-
-typedef VOID (* CONTINUATION_PROC)(EFI_STATUS Status, VOID *HobListPtr);
-
-typedef struct {
-  VOID               *NvsBufferPtr;
-  VOID               *RtBufferPtr;
-  CONTINUATION_PROC   ContinuationFunc;
-} FSP_INIT_PARAMS;
-
-typedef struct {
-  UINT32            *StackTop;
-  UINT32             BootMode;  /* Refer to boot mode defined in MdePkg\Include\Pi\PiBootMode.h */
-  VOID              *UpdDataRgnPtr;
-  UINT32             Reserved[7];
-} FSP_INIT_RT_COMMON_BUFFER;
-
-typedef enum {
-  EnumInitPhaseAfterPciEnumeration = 0x20,
-  EnumInitPhaseReadyToBoot = 0x40
-} FSP_INIT_PHASE;
-
-typedef struct {
-  FSP_INIT_PHASE     Phase;
-} NOTIFY_PHASE_PARAMS;
-
-#pragma pack()
-
-
-typedef FSP_STATUS (FSPAPI *FSP_FSP_INIT)    (FSP_INIT_PARAMS     *FspInitParamPtr);
-typedef FSP_STATUS (FSPAPI *FSP_NOTFY_PHASE) (NOTIFY_PHASE_PARAMS *NotifyPhaseParamPtr);
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspffs.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspffs.h
deleted file mode 100644
index 7a7c367..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspffs.h
+++ /dev/null
@@ -1,506 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-
-#ifndef __PI_FIRMWARE_FILE_H__
-#define __PI_FIRMWARE_FILE_H__
-
-#pragma pack(1)
-///
-/// Used to verify the integrity of the file.
-///
-typedef union {
-  struct {
-    ///
-    /// The IntegrityCheck.Checksum.Header field is an 8-bit checksum of the file
-    /// header. The State and IntegrityCheck.Checksum.File fields are assumed
-    /// to be zero and the checksum is calculated such that the entire header sums to zero.
-    ///
-    UINT8   Header;
-    ///
-    /// If the FFS_ATTRIB_CHECKSUM (see definition below) bit of the Attributes
-    /// field is set to one, the IntegrityCheck.Checksum.File field is an 8-bit
-    /// checksum of the file data.
-    /// If the FFS_ATTRIB_CHECKSUM bit of the Attributes field is cleared to zero,
-    /// the IntegrityCheck.Checksum.File field must be initialized with a value of
-    /// 0xAA. The IntegrityCheck.Checksum.File field is valid any time the
-    /// EFI_FILE_DATA_VALID bit is set in the State field.
-    ///
-    UINT8   File;
-  } Checksum;
-  ///
-  /// This is the full 16 bits of the IntegrityCheck field.
-  ///
-  UINT16    Checksum16;
-} EFI_FFS_INTEGRITY_CHECK;
-
-///
-/// FFS_FIXED_CHECKSUM is the checksum value used when the
-/// FFS_ATTRIB_CHECKSUM attribute bit is clear.
-///
-#define FFS_FIXED_CHECKSUM  0xAA
-
-typedef UINT8 EFI_FV_FILETYPE;
-typedef UINT8 EFI_FFS_FILE_ATTRIBUTES;
-typedef UINT8 EFI_FFS_FILE_STATE;
-
-///
-/// File Types Definitions
-///
-#define EFI_FV_FILETYPE_ALL                   0x00
-#define EFI_FV_FILETYPE_RAW                   0x01
-#define EFI_FV_FILETYPE_FREEFORM              0x02
-#define EFI_FV_FILETYPE_SECURITY_CORE         0x03
-#define EFI_FV_FILETYPE_PEI_CORE              0x04
-#define EFI_FV_FILETYPE_DXE_CORE              0x05
-#define EFI_FV_FILETYPE_PEIM                  0x06
-#define EFI_FV_FILETYPE_DRIVER                0x07
-#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08
-#define EFI_FV_FILETYPE_APPLICATION           0x09
-#define EFI_FV_FILETYPE_SMM                   0x0A
-#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
-#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
-#define EFI_FV_FILETYPE_SMM_CORE              0x0D
-#define EFI_FV_FILETYPE_OEM_MIN               0xc0
-#define EFI_FV_FILETYPE_OEM_MAX               0xdf
-#define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
-#define EFI_FV_FILETYPE_DEBUG_MAX             0xef
-#define EFI_FV_FILETYPE_FFS_MIN               0xf0
-#define EFI_FV_FILETYPE_FFS_MAX               0xff
-#define EFI_FV_FILETYPE_FFS_PAD               0xf0
-///
-/// FFS File Attributes.
-///
-#define FFS_ATTRIB_LARGE_FILE         0x01
-#define FFS_ATTRIB_FIXED              0x04
-#define FFS_ATTRIB_DATA_ALIGNMENT     0x38
-#define FFS_ATTRIB_CHECKSUM           0x40
-
-///
-/// FFS File State Bits.
-///
-#define EFI_FILE_HEADER_CONSTRUCTION  0x01
-#define EFI_FILE_HEADER_VALID         0x02
-#define EFI_FILE_DATA_VALID           0x04
-#define EFI_FILE_MARKED_FOR_UPDATE    0x08
-#define EFI_FILE_DELETED              0x10
-#define EFI_FILE_HEADER_INVALID       0x20
-
-
-///
-/// Each file begins with the header that describe the
-/// contents and state of the files.
-///
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file.
-  ///
-  EFI_GUID                Name;
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK IntegrityCheck;
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE         Type;
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES Attributes;
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  ///
-  UINT8                   Size[3];
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE      State;
-} EFI_FFS_FILE_HEADER;
-
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file. There may be only
-  /// one instance of a file with the file name GUID of Name in any given firmware
-  /// volume, except if the file type is EFI_FV_FILETYPE_FFS_PAD.
-  ///
-  EFI_GUID                  Name;
-
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK   IntegrityCheck;
-
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE           Type;
-
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES   Attributes;
-
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  /// The length of the file data is either (Size - sizeof(EFI_FFS_FILE_HEADER)). This calculation means a
-  /// zero-length file has a Size of 24 bytes, which is sizeof(EFI_FFS_FILE_HEADER).
-  /// Size is not required to be a multiple of 8 bytes. Given a file F, the next file header is
-  /// located at the next 8-byte aligned firmware volume offset following the last byte of the file F.
-  ///
-  UINT8                     Size[3];
-
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE        State;
-
-  ///
-  /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
-  /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
-  ///
-  UINT32                    ExtendedSize;
-} EFI_FFS_FILE_HEADER2;
-
-#define IS_FFS_FILE2(FfsFileHeaderPtr) \
-    (((((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Attributes) & FFS_ATTRIB_LARGE_FILE) == FFS_ATTRIB_LARGE_FILE)
-
-#define FFS_FILE_SIZE(FfsFileHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Size) & 0x00ffffff))
-
-#define FFS_FILE2_SIZE(FfsFileHeaderPtr) \
-    (((EFI_FFS_FILE_HEADER2 *) (UINTN) FfsFileHeaderPtr)->ExtendedSize)
-
-typedef UINT8 EFI_SECTION_TYPE;
-
-///
-/// Pseudo type. It is used as a wild card when retrieving sections.
-///  The section type EFI_SECTION_ALL matches all section types.
-///
-#define EFI_SECTION_ALL                   0x00
-
-///
-/// Encapsulation section Type values.
-///
-#define EFI_SECTION_COMPRESSION           0x01
-
-#define EFI_SECTION_GUID_DEFINED          0x02
-
-#define EFI_SECTION_DISPOSABLE            0x03
-
-///
-/// Leaf section Type values.
-///
-#define EFI_SECTION_PE32                  0x10
-#define EFI_SECTION_PIC                   0x11
-#define EFI_SECTION_TE                    0x12
-#define EFI_SECTION_DXE_DEPEX             0x13
-#define EFI_SECTION_VERSION               0x14
-#define EFI_SECTION_USER_INTERFACE        0x15
-#define EFI_SECTION_COMPATIBILITY16       0x16
-#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17
-#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18
-#define EFI_SECTION_RAW                   0x19
-#define EFI_SECTION_PEI_DEPEX             0x1B
-#define EFI_SECTION_SMM_DEPEX             0x1C
-
-///
-/// Common section header.
-///
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-  EFI_SECTION_TYPE  Type;
-  ///
-  /// Declares the section type.
-  ///
-} EFI_COMMON_SECTION_HEADER;
-
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-
-  EFI_SECTION_TYPE  Type;
-
-  ///
-  /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
-  /// Size is not equal to 0xFFFFFF, then this field does not exist.
-  ///
-  UINT32            ExtendedSize;
-} EFI_COMMON_SECTION_HEADER2;
-
-///
-/// Leaf section type that contains an
-/// IA-32 16-bit executable image.
-///
-typedef EFI_COMMON_SECTION_HEADER  EFI_COMPATIBILITY16_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_COMPATIBILITY16_SECTION2;
-
-///
-/// CompressionType of EFI_COMPRESSION_SECTION.
-///
-#define EFI_NOT_COMPRESSED        0x00
-#define EFI_STANDARD_COMPRESSION  0x01
-///
-/// An encapsulation section type in which the
-/// section data is compressed.
-///
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                      UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                       CompressionType;
-} EFI_COMPRESSION_SECTION;
-
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                        UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                         CompressionType;
-} EFI_COMPRESSION_SECTION2;
-
-///
-/// An encapsulation section type in which the section data is disposable.
-/// A disposable section is an encapsulation section in which the section data may be disposed of during
-/// the process of creating or updating a firmware image without significant impact on the usefulness of
-/// the file. The Type field in the section header is set to EFI_SECTION_DISPOSABLE. This
-/// allows optional or descriptive data to be included with the firmware file which can be removed in
-/// order to conserve space. The contents of this section are implementation specific, but might contain
-/// debug data or detailed integration instructions.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DISPOSABLE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DISPOSABLE_SECTION2;
-
-///
-/// The leaf section which could be used to determine the dispatch order of DXEs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DXE_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DXE_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a PI FV.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
-
-///
-/// The leaf section which contains a single GUID.
-///
-typedef struct {
-  ///
-  /// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                    SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                      SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
-
-///
-/// Attributes of EFI_GUID_DEFINED_SECTION.
-///
-#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED  0x01
-#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID    0x02
-///
-/// The leaf section which is encapsulation defined by specific GUID.
-///
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                    SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                      DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                      Attributes;
-} EFI_GUID_DEFINED_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                      SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                        DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                        Attributes;
-} EFI_GUID_DEFINED_SECTION2;
-
-///
-/// The leaf section which contains PE32+ image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PE32_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PE32_SECTION2;
-
-///
-/// The leaf section used to determine the dispatch order of PEIMs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PEI_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PEI_DEPEX_SECTION2;
-
-///
-/// A leaf section type that contains a position-independent-code (PIC) image.
-/// A PIC image section is a leaf section that contains a position-independent-code (PIC) image.
-/// In addition to normal PE32+ images that contain relocation information, PEIM executables may be
-/// PIC and are referred to as PIC images. A PIC image is the same as a PE32+ image except that all
-/// relocation information has been stripped from the image and the image can be moved and will
-/// execute correctly without performing any relocation or other fix-ups. EFI_PIC_SECTION2 must
-/// be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PIC_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PIC_SECTION2;
-
-///
-/// The leaf section which constains the position-independent-code image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_TE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_TE_SECTION2;
-
-///
-/// The leaf section which contains an array of zero or more bytes.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_RAW_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_RAW_SECTION2;
-
-///
-/// The SMM dependency expression section is a leaf section that contains a dependency expression that
-/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
-/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
-/// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
-/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
-/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a unicode string that
-/// is human readable file name.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      FileNameString[1];
-} EFI_USER_INTERFACE_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  CHAR16                        FileNameString[1];
-} EFI_USER_INTERFACE_SECTION2;
-
-///
-/// The leaf section which contains a numeric build number and
-/// an optional unicode string that represents the file revision.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  UINT16                      BuildNumber;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      VersionString[1];
-} EFI_VERSION_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// A UINT16 that represents a particular build. Subsequent builds have monotonically
-  /// increasing build numbers relative to earlier builds.
-  ///
-  UINT16                        BuildNumber;
-  CHAR16                        VersionString[1];
-} EFI_VERSION_SECTION2;
-
-#define IS_SECTION2(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff) == 0x00ffffff)
-
-#define SECTION_SIZE(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff))
-
-#define SECTION2_SIZE(SectionHeaderPtr) \
-    (((EFI_COMMON_SECTION_HEADER2 *) (UINTN) SectionHeaderPtr)->ExtendedSize)
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspfv.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspfv.h
deleted file mode 100644
index 75d17fa..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspfv.h
+++ /dev/null
@@ -1,247 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_FIRMWAREVOLUME_H__
-#define __PI_FIRMWAREVOLUME_H__
-
-///
-/// EFI_FV_FILE_ATTRIBUTES
-///
-typedef UINT32  EFI_FV_FILE_ATTRIBUTES;
-
-//
-// Value of EFI_FV_FILE_ATTRIBUTES.
-//
-#define EFI_FV_FILE_ATTRIB_ALIGNMENT      0x0000001F
-#define EFI_FV_FILE_ATTRIB_FIXED          0x00000100
-#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED  0x00000200
-
-///
-/// type of EFI FVB attribute
-///
-typedef UINT32  EFI_FVB_ATTRIBUTES_2;
-
-//
-// Attributes bit definitions
-//
-#define EFI_FVB2_READ_DISABLED_CAP  0x00000001
-#define EFI_FVB2_READ_ENABLED_CAP   0x00000002
-#define EFI_FVB2_READ_STATUS        0x00000004
-#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
-#define EFI_FVB2_WRITE_ENABLED_CAP  0x00000010
-#define EFI_FVB2_WRITE_STATUS       0x00000020
-#define EFI_FVB2_LOCK_CAP           0x00000040
-#define EFI_FVB2_LOCK_STATUS        0x00000080
-#define EFI_FVB2_STICKY_WRITE       0x00000200
-#define EFI_FVB2_MEMORY_MAPPED      0x00000400
-#define EFI_FVB2_ERASE_POLARITY     0x00000800
-#define EFI_FVB2_READ_LOCK_CAP      0x00001000
-#define EFI_FVB2_READ_LOCK_STATUS   0x00002000
-#define EFI_FVB2_WRITE_LOCK_CAP     0x00004000
-#define EFI_FVB2_WRITE_LOCK_STATUS  0x00008000
-#define EFI_FVB2_ALIGNMENT          0x001F0000
-#define EFI_FVB2_ALIGNMENT_1        0x00000000
-#define EFI_FVB2_ALIGNMENT_2        0x00010000
-#define EFI_FVB2_ALIGNMENT_4        0x00020000
-#define EFI_FVB2_ALIGNMENT_8        0x00030000
-#define EFI_FVB2_ALIGNMENT_16       0x00040000
-#define EFI_FVB2_ALIGNMENT_32       0x00050000
-#define EFI_FVB2_ALIGNMENT_64       0x00060000
-#define EFI_FVB2_ALIGNMENT_128      0x00070000
-#define EFI_FVB2_ALIGNMENT_256      0x00080000
-#define EFI_FVB2_ALIGNMENT_512      0x00090000
-#define EFI_FVB2_ALIGNMENT_1K       0x000A0000
-#define EFI_FVB2_ALIGNMENT_2K       0x000B0000
-#define EFI_FVB2_ALIGNMENT_4K       0x000C0000
-#define EFI_FVB2_ALIGNMENT_8K       0x000D0000
-#define EFI_FVB2_ALIGNMENT_16K      0x000E0000
-#define EFI_FVB2_ALIGNMENT_32K      0x000F0000
-#define EFI_FVB2_ALIGNMENT_64K      0x00100000
-#define EFI_FVB2_ALIGNMENT_128K     0x00110000
-#define EFI_FVB2_ALIGNMENT_256K     0x00120000
-#define EFI_FVB2_ALIGNMENT_512K     0x00130000
-#define EFI_FVB2_ALIGNMENT_1M       0x00140000
-#define EFI_FVB2_ALIGNMENT_2M       0x00150000
-#define EFI_FVB2_ALIGNMENT_4M       0x00160000
-#define EFI_FVB2_ALIGNMENT_8M       0x00170000
-#define EFI_FVB2_ALIGNMENT_16M      0x00180000
-#define EFI_FVB2_ALIGNMENT_32M      0x00190000
-#define EFI_FVB2_ALIGNMENT_64M      0x001A0000
-#define EFI_FVB2_ALIGNMENT_128M     0x001B0000
-#define EFI_FVB2_ALIGNMENT_256M     0x001C0000
-#define EFI_FVB2_ALIGNMENT_512M     0x001D0000
-#define EFI_FVB2_ALIGNMENT_1G       0x001E0000
-#define EFI_FVB2_ALIGNMENT_2G       0x001F0000
-
-
-typedef struct {
-  ///
-  /// The number of sequential blocks which are of the same size.
-  ///
-  UINT32 NumBlocks;
-  ///
-  /// The size of the blocks.
-  ///
-  UINT32 Length;
-} EFI_FV_BLOCK_MAP_ENTRY;
-
-///
-/// Describes the features and layout of the firmware volume.
-///
-typedef struct {
-  ///
-  /// The first 16 bytes are reserved to allow for the reset vector of
-  /// processors whose reset vector is at address 0.
-  ///
-  UINT8                     ZeroVector[16];
-  ///
-  /// Declares the file system with which the firmware volume is formatted.
-  ///
-  EFI_GUID                  FileSystemGuid;
-  ///
-  /// Length in bytes of the complete firmware volume, including the header.
-  ///
-  UINT64                    FvLength;
-  ///
-  /// Set to EFI_FVH_SIGNATURE
-  ///
-  UINT32                    Signature;
-  ///
-  /// Declares capabilities and power-on defaults for the firmware volume.
-  ///
-  EFI_FVB_ATTRIBUTES_2      Attributes;
-  ///
-  /// Length in bytes of the complete firmware volume header.
-  ///
-  UINT16                    HeaderLength;
-  ///
-  /// A 16-bit checksum of the firmware volume header. A valid header sums to zero.
-  ///
-  UINT16                    Checksum;
-  ///
-  /// Offset, relative to the start of the header, of the extended header
-  /// (EFI_FIRMWARE_VOLUME_EXT_HEADER) or zero if there is no extended header.
-  ///
-  UINT16                    ExtHeaderOffset;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT8                     Reserved[1];
-  ///
-  /// Set to 2. Future versions of this specification may define new header fields and will
-  /// increment the Revision field accordingly.
-  ///
-  UINT8                     Revision;
-  ///
-  /// An array of run-length encoded FvBlockMapEntry structures. The array is
-  /// terminated with an entry of {0,0}.
-  ///
-  EFI_FV_BLOCK_MAP_ENTRY    BlockMap[1];
-} EFI_FIRMWARE_VOLUME_HEADER;
-
-#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
-
-///
-/// Firmware Volume Header Revision definition
-///
-#define EFI_FVH_REVISION  0x02
-
-///
-/// Extension header pointed by ExtHeaderOffset of volume header.
-///
-typedef struct {
-  ///
-  /// Firmware volume name.
-  ///
-  EFI_GUID  FvName;
-  ///
-  /// Size of the rest of the extension header, including this structure.
-  ///
-  UINT32    ExtHeaderSize;
-} EFI_FIRMWARE_VOLUME_EXT_HEADER;
-
-///
-/// Entry struture for describing FV extension header
-///
-typedef struct {
-  ///
-  /// Size of this header extension.
-  ///
-  UINT16    ExtEntrySize;
-  ///
-  /// Type of the header.
-  ///
-  UINT16    ExtEntryType;
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY;
-
-#define EFI_FV_EXT_TYPE_OEM_TYPE  0x01
-///
-/// This extension header provides a mapping between a GUID and an OEM file type.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr;
-  ///
-  /// A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31). If a bit
-  /// is '1', then the GUID entry exists in Types. If a bit is '0' then no GUID entry exists in Types.
-  ///
-  UINT32    TypeMask;
-  ///
-  /// An array of GUIDs, each GUID representing an OEM file type.
-  ///
-  /// EFI_GUID  Types[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_OEM_TYPE;
-
-#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
-
-///
-/// This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific
-/// GUID FormatType type which includes a length and a successive series of data bytes.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY     Hdr;
-  ///
-  /// Vendor-specific GUID.
-  ///
-  EFI_GUID                          FormatType;
-  ///
-  /// An arry of bytes of length Length.
-  ///
-  /// UINT8                             Data[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fsphob.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fsphob.h
deleted file mode 100644
index 5840907..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fsphob.h
+++ /dev/null
@@ -1,507 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_HOB_H__
-#define __PI_HOB_H__
-
-//
-// HobType of EFI_HOB_GENERIC_HEADER.
-//
-#define EFI_HOB_TYPE_MEMORY_ALLOCATION    0x0002
-#define EFI_HOB_TYPE_RESOURCE_DESCRIPTOR  0x0003
-#define EFI_HOB_TYPE_GUID_EXTENSION       0x0004
-#define EFI_HOB_TYPE_UNUSED               0xFFFE
-#define EFI_HOB_TYPE_END_OF_HOB_LIST      0xFFFF
-
-///
-/// Describes the format and size of the data inside the HOB.
-/// All HOBs must contain this generic HOB header.
-///
-typedef struct {
-  ///
-  /// Identifies the HOB data structure type.
-  ///
-  UINT16    HobType;
-  ///
-  /// The length in bytes of the HOB.
-  ///
-  UINT16    HobLength;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT32    Reserved;
-} EFI_HOB_GENERIC_HEADER;
-
-///
-/// Enumeration of memory types introduced in UEFI.
-///
-typedef enum {
-  ///
-  /// Not used.
-  ///
-  EfiReservedMemoryType,
-  ///
-  /// The code portions of a loaded application.
-  /// (Note that UEFI OS loaders are UEFI applications.)
-  ///
-  EfiLoaderCode,
-  ///
-  /// The data portions of a loaded application and the default data allocation
-  /// type used by an application to allocate pool memory.
-  ///
-  EfiLoaderData,
-  ///
-  /// The code portions of a loaded Boot Services Driver.
-  ///
-  EfiBootServicesCode,
-  ///
-  /// The data portions of a loaded Boot Serves Driver, and the default data
-  /// allocation type used by a Boot Services Driver to allocate pool memory.
-  ///
-  EfiBootServicesData,
-  ///
-  /// The code portions of a loaded Runtime Services Driver.
-  ///
-  EfiRuntimeServicesCode,
-  ///
-  /// The data portions of a loaded Runtime Services Driver and the default
-  /// data allocation type used by a Runtime Services Driver to allocate pool memory.
-  ///
-  EfiRuntimeServicesData,
-  ///
-  /// Free (unallocated) memory.
-  ///
-  EfiConventionalMemory,
-  ///
-  /// Memory in which errors have been detected.
-  ///
-  EfiUnusableMemory,
-  ///
-  /// Memory that holds the ACPI tables.
-  ///
-  EfiACPIReclaimMemory,
-  ///
-  /// Address space reserved for use by the firmware.
-  ///
-  EfiACPIMemoryNVS,
-  ///
-  /// Used by system firmware to request that a memory-mapped IO region
-  /// be mapped by the OS to a virtual address so it can be accessed by EFI runtime services.
-  ///
-  EfiMemoryMappedIO,
-  ///
-  /// System memory-mapped IO region that is used to translate memory
-  /// cycles to IO cycles by the processor.
-  ///
-  EfiMemoryMappedIOPortSpace,
-  ///
-  /// Address space reserved by the firmware for code that is part of the processor.
-  ///
-  EfiPalCode,
-  EfiMaxMemoryType
-} EFI_MEMORY_TYPE;
-
-///
-/// EFI_HOB_MEMORY_ALLOCATION_HEADER describes the
-/// various attributes of the logical memory allocation. The type field will be used for
-/// subsequent inclusion in the UEFI memory map.
-///
-typedef struct {
-  ///
-  /// A GUID that defines the memory allocation region's type and purpose, as well as
-  /// other fields within the memory allocation HOB. This GUID is used to define the
-  /// additional data within the HOB that may be present for the memory allocation HOB.
-  /// Type EFI_GUID is defined in InstallProtocolInterface() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_GUID              Name;
-
-  ///
-  /// The base address of memory allocated by this HOB. Type
-  /// EFI_PHYSICAL_ADDRESS is defined in AllocatePages() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_PHYSICAL_ADDRESS  MemoryBaseAddress;
-
-  ///
-  /// The length in bytes of memory allocated by this HOB.
-  ///
-  UINT64                MemoryLength;
-
-  ///
-  /// Defines the type of memory allocated by this HOB. The memory type definition
-  /// follows the EFI_MEMORY_TYPE definition. Type EFI_MEMORY_TYPE is defined
-  /// in AllocatePages() in the UEFI 2.0 specification.
-  ///
-  EFI_MEMORY_TYPE       MemoryType;
-
-  ///
-  /// Padding for Itanium processor family
-  ///
-  UINT8                 Reserved[4];
-} EFI_HOB_MEMORY_ALLOCATION_HEADER;
-
-///
-/// Describes all memory ranges used during the HOB producer
-/// phase that exist outside the HOB list. This HOB type
-/// describes how memory is used, not the physical attributes of memory.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_MEMORY_ALLOCATION.
-  ///
-  EFI_HOB_GENERIC_HEADER            Header;
-  ///
-  /// An instance of the EFI_HOB_MEMORY_ALLOCATION_HEADER that describes the
-  /// various attributes of the logical memory allocation.
-  ///
-  EFI_HOB_MEMORY_ALLOCATION_HEADER  AllocDescriptor;
-  //
-  // Additional data pertaining to the "Name" Guid memory
-  // may go here.
-  //
-} EFI_HOB_MEMORY_ALLOCATION;
-
-///
-/// The resource type.
-///
-typedef UINT32 EFI_RESOURCE_TYPE;
-
-//
-// Value of ResourceType in EFI_HOB_RESOURCE_DESCRIPTOR.
-//
-#define EFI_RESOURCE_SYSTEM_MEMORY          0x00000000
-#define EFI_RESOURCE_MEMORY_MAPPED_IO       0x00000001
-#define EFI_RESOURCE_IO                     0x00000002
-#define EFI_RESOURCE_FIRMWARE_DEVICE        0x00000003
-#define EFI_RESOURCE_MEMORY_MAPPED_IO_PORT  0x00000004
-#define EFI_RESOURCE_MEMORY_RESERVED        0x00000005
-#define EFI_RESOURCE_IO_RESERVED            0x00000006
-#define EFI_RESOURCE_MAX_MEMORY_TYPE        0x00000007
-
-///
-/// A type of recount attribute type.
-///
-typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
-
-//
-// These types can be ORed together as needed.
-//
-// The first three enumerations describe settings
-//
-#define EFI_RESOURCE_ATTRIBUTE_PRESENT              0x00000001
-#define EFI_RESOURCE_ATTRIBUTE_INITIALIZED          0x00000002
-#define EFI_RESOURCE_ATTRIBUTE_TESTED               0x00000004
-//
-// The rest of the settings describe capabilities
-//
-#define EFI_RESOURCE_ATTRIBUTE_SINGLE_BIT_ECC           0x00000008
-#define EFI_RESOURCE_ATTRIBUTE_MULTIPLE_BIT_ECC         0x00000010
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_1           0x00000020
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_2           0x00000040
-#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED           0x00000080
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED          0x00000100
-#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED      0x00000200
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE              0x00000400
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE        0x00000800
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE  0x00001000
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE     0x00002000
-#define EFI_RESOURCE_ATTRIBUTE_16_BIT_IO                0x00004000
-#define EFI_RESOURCE_ATTRIBUTE_32_BIT_IO                0x00008000
-#define EFI_RESOURCE_ATTRIBUTE_64_BIT_IO                0x00010000
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHED_EXPORTED        0x00020000
-
-///
-/// Describes the resource properties of all fixed,
-/// nonrelocatable resource ranges found on the processor
-/// host bus during the HOB producer phase.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_RESOURCE_DESCRIPTOR.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID representing the owner of the resource. This GUID is used by HOB
-  /// consumer phase components to correlate device ownership of a resource.
-  ///
-  EFI_GUID                    Owner;
-  ///
-  /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
-  ///
-  EFI_RESOURCE_TYPE           ResourceType;
-  ///
-  /// Resource attributes as defined by EFI_RESOURCE_ATTRIBUTE_TYPE.
-  ///
-  EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
-  ///
-  /// The physical start address of the resource region.
-  ///
-  EFI_PHYSICAL_ADDRESS        PhysicalStart;
-  ///
-  /// The number of bytes of the resource region.
-  ///
-  UINT64                      ResourceLength;
-} EFI_HOB_RESOURCE_DESCRIPTOR;
-
-///
-/// Allows writers of executable content in the HOB producer phase to
-/// maintain and manage HOBs with specific GUID.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_GUID_EXTENSION.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID that defines the contents of this HOB.
-  ///
-  EFI_GUID                    Name;
-  //
-  // Guid specific data goes here
-  //
-} EFI_HOB_GUID_TYPE;
-
-///
-/// Union of all the possible HOB Types.
-///
-typedef union {
-  EFI_HOB_GENERIC_HEADER              *Header;
-  EFI_HOB_MEMORY_ALLOCATION           *MemoryAllocation;
-  EFI_HOB_RESOURCE_DESCRIPTOR         *ResourceDescriptor;
-  EFI_HOB_GUID_TYPE                   *Guid;
-  UINT8                               *Raw;
-} EFI_PEI_HOB_POINTERS;
-
-
-/**
-  Returns the type of a HOB.
-
-  This macro returns the HobType field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobType.
-
-**/
-#define GET_HOB_TYPE(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobType)
-
-/**
-  Returns the length, in bytes, of a HOB.
-
-  This macro returns the HobLength field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobLength.
-
-**/
-#define GET_HOB_LENGTH(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobLength)
-
-/**
-  Returns a pointer to the next HOB in the HOB list.
-
-  This macro returns a pointer to HOB that follows the
-  HOB specified by HobStart in the HOB List.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return A pointer to the next HOB in the HOB list.
-
-**/
-#define GET_NEXT_HOB(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + GET_HOB_LENGTH (HobStart))
-
-/**
-  Determines if a HOB is the last HOB in the HOB list.
-
-  This macro determine if the HOB specified by HobStart is the
-  last HOB in the HOB list.  If HobStart is last HOB in the HOB list,
-  then TRUE is returned.  Otherwise, FALSE is returned.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @retval TRUE       The HOB specified by HobStart is the last HOB in the HOB list.
-  @retval FALSE      The HOB specified by HobStart is not the last HOB in the HOB list.
-
-**/
-#define END_OF_HOB_LIST(HobStart)  (GET_HOB_TYPE (HobStart) == (UINT16)EFI_HOB_TYPE_END_OF_HOB_LIST)
-
-/**
-  Returns a pointer to data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns a pointer to the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  A pointer to the data buffer in a HOB.
-
-**/
-#define GET_GUID_HOB_DATA(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the size of the data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns the size, in bytes, of the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  The size of the data buffer.
-**/
-#define GET_GUID_HOB_DATA_SIZE(HobStart) \
-  (UINT16)(GET_HOB_LENGTH (HobStart) - sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the pointer to the HOB list.
-
-  This function returns the pointer to first HOB in the list.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @return The pointer to the HOB list.
-
-**/
-VOID *
-EFIAPI
-GetHobList (
-  VOID
-  );
-
-/**
-  Returns the next instance of a HOB type from the starting HOB.
-
-  This function searches the first instance of a HOB type from the starting HOB pointer.
-  If there does not exist such HOB type from the starting HOB pointer, it will return NULL.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If HobStart is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-  @param  HobStart      The starting HOB pointer to search from.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextHob (
-  UINT16                 Type,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of a HOB type among the whole HOB list.
-
-  This function searches the first instance of a HOB type among the whole HOB list.
-  If there does not exist such HOB type in the HOB list, it will return NULL.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetFirstHob (
-  UINT16                 Type
-  );
-
-/**
-  Returns the next instance of the matched GUID HOB from the starting HOB.
-
-  This function searches the first instance of a HOB from the starting HOB pointer.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If Guid is NULL, then ASSERT().
-  If HobStart is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-  @param  HobStart      A pointer to a Guid.
-
-  @return The next instance of the matched GUID HOB from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextGuidHob (
-  CONST EFI_GUID         *Guid,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of the matched GUID HOB among the whole HOB list.
-
-  This function searches the first instance of a HOB among the whole HOB list.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-  If Guid is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-
-  @return The first instance of the matched GUID HOB among the whole HOB list.
-
-**/
-VOID *
-EFIAPI
-GetFirstGuidHob (
-  CONST EFI_GUID         *Guid
-  );
-
-BOOLEAN
-EFIAPI
-CompareGuid (
-  CONST EFI_GUID  *Guid1,
-  CONST EFI_GUID  *Guid2
-  );
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspinfoheader.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspinfoheader.h
deleted file mode 100644
index 0f7b3a9..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspinfoheader.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_INFO_HEADER_H_
-#define _FSP_INFO_HEADER_H_
-
-#pragma pack(1)
-
-typedef struct  {
-
-  UINT32  Signature;       // Off 0x94
-  UINT32  HeaderLength;
-  UINT8   Reserved1[3];
-  UINT8   HeaderRevision;
-  UINT32  ImageRevision;
-
-  CHAR8   ImageId[8];      // Off 0xA4
-  UINT32  ImageSize;
-  UINT32  ImageBase;
-
-  UINT32  ImageAttribute;  // Off 0xB4
-  UINT32  CfgRegionOffset;
-  UINT32  CfgRegionSize;
-  UINT32  ApiEntryNum;
-
-  UINT32  NemInitEntry;    // Off 0xC4
-  UINT32  FspInitEntry;
-  UINT32  NotifyPhaseEntry;
-  UINT32  Reserved2;
-
-} FSP_INFO_HEADER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspplatform.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspplatform.h
deleted file mode 100644
index e78ac47..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fspplatform.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_PLATFORM_H_
-#define _FSP_PLATFORM_H_
-
-#include "fsptypes.h"
-#include "fspapi.h"
-#include "mem_config.h"
-
-#pragma pack(1)
-
-typedef struct {
-    MEM_CONFIG  *MemoryConfig;
-} FSP_INIT_RT_PLATFORM_BUFFER;
-
-
-typedef struct {
-    FSP_INIT_RT_COMMON_BUFFER  Common;
-    FSP_INIT_RT_PLATFORM_BUFFER  Platform;
-} FSP_INIT_RT_BUFFER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fsptypes.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fsptypes.h
deleted file mode 100644
index a3a54c0..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/fsptypes.h
+++ /dev/null
@@ -1,116 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-/** \file  fsptypes.h
- *
- *
- */
-
-#ifndef __FSP_TYPES_H__
-#define __FSP_TYPES_H__
-
-///
-/// 8-byte unsigned value.
-///
-typedef unsigned long long  UINT64;
-///
-/// 8-byte signed value.
-///
-typedef long long           INT64;
-///
-/// 4-byte unsigned value.
-///
-typedef unsigned int        UINT32;
-///
-/// 4-byte signed value.
-///
-typedef int                 INT32;
-///
-/// 2-byte unsigned value.
-///
-typedef unsigned short      UINT16;
-///
-/// 2-byte Character.  Unless otherwise specified all strings are stored in the
-/// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.
-///
-typedef unsigned short      CHAR16;
-///
-/// 2-byte signed value.
-///
-typedef short               INT16;
-///
-/// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other
-/// values are undefined.
-///
-typedef unsigned char       BOOLEAN;
-///
-/// 1-byte unsigned value.
-///
-typedef unsigned char       UINT8;
-///
-/// 1-byte Character
-///
-typedef char                CHAR8;
-///
-/// 1-byte signed value
-///
-typedef char                INT8;
-
-typedef void                VOID;
-
-typedef UINT64              EFI_PHYSICAL_ADDRESS;
-
-typedef struct {
-  UINT32  Data1;
-  UINT16  Data2;
-  UINT16  Data3;
-  UINT8   Data4[8];
-} EFI_GUID;
-
-#define CONST     const
-#define STATIC    static
-
-#define TRUE  ((BOOLEAN)(1==1))
-#define FALSE ((BOOLEAN)(0==1))
-
-#define FSPAPI __attribute__((cdecl))
-#define EFIAPI __attribute__((cdecl))
-
-#define ASSERT(Expression)      \
-  do {                          \
-    if (!(Expression)) {        \
-      for (;;);                 \
-    }                           \
-  } while (FALSE)
-
-typedef UINT32 FSP_STATUS;
-typedef UINT32 EFI_STATUS;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/mem_config.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/mem_config.h
deleted file mode 100644
index 26deb90..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/mem_config.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-//
-// mem_config.h
-//
-
-#ifndef _MEM_CONFIG_H_
-#define _MEM_CONFIG_H_
-
-typedef enum {
-  fi1067_IVB=0,
-  fi1333_IVB,
-  fi1400_IVB,
-  fi1600_IVB,
-  fi1800_IVB,
-  fi1867_IVB,
-  fi2000_IVB,
-  fi2133_IVB,
-  fi2200_IVB,
-  fi2400_IVB,
-  fi2600_IVB,
-  fi2667_IVB,
-  fi2800_IVB,
-  fiUnsupport_IVB,
-}TFrequencyIndex_IVB;
-
-#define NUM_IVB_MEM_CLK_FREQUENCIES 13
-
-// DDR3 memory SPD data
-//
-// NOTE: This only includes the SPD bytes that are relevant to the MRC
-typedef struct {                             // BYTE
-    uint8_t  SPDGeneral;                     // 0   Number of Serial PD Bytes Written / SPD Device Size / CRC Coverage 1, 2
-    uint8_t  SPDRevision;                    // 1   SPD Revision
-    uint8_t  DRAMDeviceType;                 // 2   DRAM Device Type
-    uint8_t  ModuleType;                     // 3   Module Type
-    uint8_t  SDRAMDensityAndBanks;           // 4   SDRAM Density and Banks
-    uint8_t  SDRAMAddressing;                // 5   SDRAM Addressing
-    uint8_t  VDD;                            // 6   Module Nominal Voltage
-    uint8_t  ModuleOrganization;             // 7   Module Organization
-    uint8_t  ModuleMemoryBusWidth;           // 8   Module Memory Bus Width
-    uint8_t  FineTimebase;                   // 9   Fine Timebase (FTB) Dividend / Divisor
-    uint8_t  TimebaseDividend;               // 10  Medium Timebase (MTB) Dividend
-    uint8_t  TimebaseDivisor;                // 11  Medium Timebase (MTB) Divisor
-    uint8_t  SDRAMMinimumCycleTime;          // 12  SDRAM Minimum Cycle Time (tCKmin)
-    uint8_t  Reserved0;                      // 13  Reserved0
-    uint8_t  CASLatenciesLSB;                // 14  CAS Latencies Supported, Least Significant Byte
-    uint8_t  CASLatenciesMSB;                // 15  CAS Latencies Supported, Most Significant Byte
-    uint8_t  MinimumCASLatencyTime;          // 16  Minimum CAS Latency Time (tAAmin)
-    uint8_t  MinimumWriteRecoveryTime;       // 17  Minimum Write Recovery Time (tWRmin)
-    uint8_t  MinimumRASToCASDelayTime;       // 18  Minimum RAS# to CAS# Delay Time (tRCDmin)
-    uint8_t  MinimumRowToRowDelayTime;       // 19  Minimum Row Active to Row Active Delay Time (tRRDmin)
-    uint8_t  MinimumRowPrechargeDelayTime;   // 20  Minimum Row Precharge Delay Time (tRPmin)
-    uint8_t  UpperNibblesFortRASAndtRC;      // 21  Upper Nibbles for tRAS and tRC
-    uint8_t  tRASmin;                        // 22  Minimum Active to Precharge Delay Time (tRASmin), Least Significant Byte
-    uint8_t  tRCmin;                         // 23  Minimum Active to Active/Refresh Delay Time (tRCmin), Least Significant Byte
-    uint8_t  tRFCminLeastSignificantByte;    // 24  Minimum Refresh Recovery Delay Time (tRFCmin), Least Significant Byte
-    uint8_t  tRFCminMostSignificantByte;     // 25  Minimum Refresh Recovery Delay Time (tRFCmin), Most Significant Byte
-    uint8_t  tWTRmin;                        // 26  Minimum Internal Write to Read Command Delay Time (tWTRmin)
-    uint8_t  tRTPmin;                        // 27  Minimum Internal Read to Precharge Command Delay Time (tRTPmin)
-    uint8_t  UpperNibbleFortFAW;             // 28  Upper Nibble for tFAW
-    uint8_t  tFAWmin;                        // 29  Minimum Four Activate Window Delay Time (tFAWmin)
-    uint8_t  SDRAMOptionalFeatures;          // 30  SDRAM Optional Features
-    uint8_t  SDRAMThermalAndRefreshOptions;  // 31  SDRAMThermalAndRefreshOptions
-    uint8_t  ModuleThermalSensor;            // 32  ModuleThermalSensor
-    uint8_t  SDRAMDeviceType;                // 33  SDRAM Device Type
-    int8_t   tCKminFine;                     // 34  Fine Offset for SDRAM Minimum Cycle Time (tCKmin)
-    int8_t   tAAminFine;                     // 35  Fine Offset for Minimum CAS Latency Time (tAAmin)
-    int8_t   tRCDminFine;                    // 36  Fine Offset for Minimum RAS# to CAS# Delay Time (tRCDmin)
-    int8_t   tRPminFine;                     // 37  Fine Offset for Minimum Row Precharge Delay Time (tRPmin)
-    int8_t   tRCminFine;                     // 38  Fine Offset for Minimum Active to Active/Refresh Delay Time (tRCmin)
-    uint8_t  ReferenceRawCardUsed;           // 62  Reference Raw Card Used
-    uint8_t  AddressMappingEdgeConnector;    // 63  Address Mapping from Edge Connector to DRAM
-    uint8_t  ThermalHeatSpreaderSolution;    // 64  ThermalHeatSpreaderSolution
-    uint8_t  ModuleManufacturerIdCodeLsb;    // 117 Module Manufacturer ID Code, Least Significant Byte
-    uint8_t  ModuleManufacturerIdCodeMsb;    // 118 Module Manufacturer ID Code, Most Significant Byte
-    uint8_t  ModuleManufacturingLocation;    // 119 Module Manufacturing Location
-    uint8_t  ModuleManufacturingDateYear;    // 120 Module Manufacturing Date Year
-    uint8_t  ModuleManufacturingDateWW;      // 121 Module Manufacturing Date creation work week
-    uint8_t  ModuleSerialNumberA;            // 122 Module Serial Number A
-    uint8_t  ModuleSerialNumberB;            // 123 Module Serial Number B
-    uint8_t  ModuleSerialNumberC;            // 124 Module Serial Number C
-    uint8_t  ModuleSerialNumberD;            // 125 Module Serial Number D
-    uint8_t  CRCA;                           // 126 CRC A
-    uint8_t  CRCB;                           // 127 CRC B
-} DDR3_SPD;
-
-// Configuration for each memory channel/bank
-typedef struct {
-    uint32_t  Exists;
-    DDR3_SPD  SpdData;
-    uint8_t   InitClkPiValue[NUM_IVB_MEM_CLK_FREQUENCIES];
-} MEM_BANK_CONFIG;
-
-// Memory configuration
-typedef struct {
-    MEM_BANK_CONFIG  ChannelABank0;
-    MEM_BANK_CONFIG  ChannelABank1;
-    MEM_BANK_CONFIG  ChannelBBank0;
-    MEM_BANK_CONFIG  ChannelBBank1;
-} MEM_CONFIG;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/peifsp.h b/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/peifsp.h
deleted file mode 100644
index dc3e60f..0000000
--- a/src/vendorcode/intel/fsp1_0/ivybridge_i89xx/include/peifsp.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-/** \file  peifsp.h
- *
- *
- */
-#include <stdint.h>
-#include "fsptypes.h"
-#include "fspfv.h"
-#include "fspffs.h"
-#include "fsphob.h"
-#include "fspapi.h"
-#include "fspplatform.h"
-#include "fspinfoheader.h"
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspapi.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspapi.h
deleted file mode 100644
index 5009246..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspapi.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_API_H_
-#define _FSP_API_H_
-
-#include <fsptypes.h>
-
-#pragma pack(1)
-
-typedef VOID (* CONTINUATION_PROC)(EFI_STATUS Status, VOID *HobListPtr);
-
-typedef struct {
-  VOID               *NvsBufferPtr;
-  VOID               *RtBufferPtr;
-  CONTINUATION_PROC   ContinuationFunc;
-} FSP_INIT_PARAMS;
-
-typedef struct {
-  UINT32            *StackTop;
-  UINT32             BootMode;  /* Refer to boot mode defined in MdePkg\Include\Pi\PiBootMode.h */
-  VOID              *UpdDataRgnPtr;
-  UINT32             Reserved[7];
-} FSP_INIT_RT_COMMON_BUFFER;
-
-typedef enum {
-  EnumInitPhaseAfterPciEnumeration = 0x20,
-  EnumInitPhaseReadyToBoot = 0x40
-} FSP_INIT_PHASE;
-
-typedef struct {
-  FSP_INIT_PHASE     Phase;
-} NOTIFY_PHASE_PARAMS;
-
-#pragma pack()
-
-typedef FSP_STATUS (FSPAPI *FSP_FSP_INIT)    (FSP_INIT_PARAMS     *FspInitParamPtr);
-typedef FSP_STATUS (FSPAPI *FSP_NOTFY_PHASE) (NOTIFY_PHASE_PARAMS *NotifyPhaseParamPtr);
-
-#endif /* _FSP_API_H_ */
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspbootmode.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspbootmode.h
deleted file mode 100644
index 16cddf0..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspbootmode.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_BOOT_MODE_H__
-#define __PI_BOOT_MODE_H__
-
-///
-/// EFI boot mode
-///
-typedef UINT32  EFI_BOOT_MODE;
-
-//
-// 0x21 - 0xf..f are reserved.
-//
-#define BOOT_WITH_FULL_CONFIGURATION                  0x00
-#define BOOT_WITH_MINIMAL_CONFIGURATION               0x01
-#define BOOT_ASSUMING_NO_CONFIGURATION_CHANGES        0x02
-#define BOOT_WITH_FULL_CONFIGURATION_PLUS_DIAGNOSTICS 0x03
-#define BOOT_WITH_DEFAULT_SETTINGS                    0x04
-#define BOOT_ON_S4_RESUME                             0x05
-#define BOOT_ON_S5_RESUME                             0x06
-#define BOOT_ON_S2_RESUME                             0x10
-#define BOOT_ON_S3_RESUME                             0x11
-#define BOOT_ON_FLASH_UPDATE                          0x12
-#define BOOT_IN_RECOVERY_MODE                         0x20
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspffs.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspffs.h
deleted file mode 100644
index 9e8244d..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspffs.h
+++ /dev/null
@@ -1,507 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_FIRMWARE_FILE_H__
-#define __PI_FIRMWARE_FILE_H__
-
-#include <fsptypes.h>
-
-#pragma pack(1)
-///
-/// Used to verify the integrity of the file.
-///
-typedef union {
-  struct {
-    ///
-    /// The IntegrityCheck.Checksum.Header field is an 8-bit checksum of the file
-    /// header. The State and IntegrityCheck.Checksum.File fields are assumed
-    /// to be zero and the checksum is calculated such that the entire header sums to zero.
-    ///
-    UINT8   Header;
-    ///
-    /// If the FFS_ATTRIB_CHECKSUM (see definition below) bit of the Attributes
-    /// field is set to one, the IntegrityCheck.Checksum.File field is an 8-bit
-    /// checksum of the file data.
-    /// If the FFS_ATTRIB_CHECKSUM bit of the Attributes field is cleared to zero,
-    /// the IntegrityCheck.Checksum.File field must be initialized with a value of
-    /// 0xAA. The IntegrityCheck.Checksum.File field is valid any time the
-    /// EFI_FILE_DATA_VALID bit is set in the State field.
-    ///
-    UINT8   File;
-  } Checksum;
-  ///
-  /// This is the full 16 bits of the IntegrityCheck field.
-  ///
-  UINT16    Checksum16;
-} EFI_FFS_INTEGRITY_CHECK;
-
-///
-/// FFS_FIXED_CHECKSUM is the checksum value used when the
-/// FFS_ATTRIB_CHECKSUM attribute bit is clear.
-///
-#define FFS_FIXED_CHECKSUM  0xAA
-
-typedef UINT8 EFI_FV_FILETYPE;
-typedef UINT8 EFI_FFS_FILE_ATTRIBUTES;
-typedef UINT8 EFI_FFS_FILE_STATE;
-
-///
-/// File Types Definitions
-///
-#define EFI_FV_FILETYPE_ALL                   0x00
-#define EFI_FV_FILETYPE_RAW                   0x01
-#define EFI_FV_FILETYPE_FREEFORM              0x02
-#define EFI_FV_FILETYPE_SECURITY_CORE         0x03
-#define EFI_FV_FILETYPE_PEI_CORE              0x04
-#define EFI_FV_FILETYPE_DXE_CORE              0x05
-#define EFI_FV_FILETYPE_PEIM                  0x06
-#define EFI_FV_FILETYPE_DRIVER                0x07
-#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08
-#define EFI_FV_FILETYPE_APPLICATION           0x09
-#define EFI_FV_FILETYPE_SMM                   0x0A
-#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
-#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
-#define EFI_FV_FILETYPE_SMM_CORE              0x0D
-#define EFI_FV_FILETYPE_OEM_MIN               0xc0
-#define EFI_FV_FILETYPE_OEM_MAX               0xdf
-#define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
-#define EFI_FV_FILETYPE_DEBUG_MAX             0xef
-#define EFI_FV_FILETYPE_FFS_MIN               0xf0
-#define EFI_FV_FILETYPE_FFS_MAX               0xff
-#define EFI_FV_FILETYPE_FFS_PAD               0xf0
-///
-/// FFS File Attributes.
-///
-#define FFS_ATTRIB_LARGE_FILE         0x01
-#define FFS_ATTRIB_FIXED              0x04
-#define FFS_ATTRIB_DATA_ALIGNMENT     0x38
-#define FFS_ATTRIB_CHECKSUM           0x40
-
-///
-/// FFS File State Bits.
-///
-#define EFI_FILE_HEADER_CONSTRUCTION  0x01
-#define EFI_FILE_HEADER_VALID         0x02
-#define EFI_FILE_DATA_VALID           0x04
-#define EFI_FILE_MARKED_FOR_UPDATE    0x08
-#define EFI_FILE_DELETED              0x10
-#define EFI_FILE_HEADER_INVALID       0x20
-
-
-///
-/// Each file begins with the header that describe the
-/// contents and state of the files.
-///
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file.
-  ///
-  EFI_GUID                Name;
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK IntegrityCheck;
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE         Type;
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES Attributes;
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  ///
-  UINT8                   Size[3];
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE      State;
-} EFI_FFS_FILE_HEADER;
-
-typedef struct {
-  ///
-  /// This GUID is the file name. It is used to uniquely identify the file. There may be only
-  /// one instance of a file with the file name GUID of Name in any given firmware
-  /// volume, except if the file type is EFI_FV_FILETYPE_FFS_PAD.
-  ///
-  EFI_GUID                  Name;
-
-  ///
-  /// Used to verify the integrity of the file.
-  ///
-  EFI_FFS_INTEGRITY_CHECK   IntegrityCheck;
-
-  ///
-  /// Identifies the type of file.
-  ///
-  EFI_FV_FILETYPE           Type;
-
-  ///
-  /// Declares various file attribute bits.
-  ///
-  EFI_FFS_FILE_ATTRIBUTES   Attributes;
-
-  ///
-  /// The length of the file in bytes, including the FFS header.
-  /// The length of the file data is either (Size - sizeof(EFI_FFS_FILE_HEADER)). This calculation means a
-  /// zero-length file has a Size of 24 bytes, which is sizeof(EFI_FFS_FILE_HEADER).
-  /// Size is not required to be a multiple of 8 bytes. Given a file F, the next file header is
-  /// located at the next 8-byte aligned firmware volume offset following the last byte of the file F.
-  ///
-  UINT8                     Size[3];
-
-  ///
-  /// Used to track the state of the file throughout the life of the file from creation to deletion.
-  ///
-  EFI_FFS_FILE_STATE        State;
-
-  ///
-  /// If FFS_ATTRIB_LARGE_FILE is set in Attributes, then ExtendedSize exists and Size must be set to zero.
-  /// If FFS_ATTRIB_LARGE_FILE is not set then EFI_FFS_FILE_HEADER is used.
-  ///
-  UINT32                    ExtendedSize;
-} EFI_FFS_FILE_HEADER2;
-
-#define IS_FFS_FILE2(FfsFileHeaderPtr) \
-    (((((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Attributes) & FFS_ATTRIB_LARGE_FILE) == FFS_ATTRIB_LARGE_FILE)
-
-#define FFS_FILE_SIZE(FfsFileHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_FFS_FILE_HEADER *) (UINTN) FfsFileHeaderPtr)->Size) & 0x00ffffff))
-
-#define FFS_FILE2_SIZE(FfsFileHeaderPtr) \
-    (((EFI_FFS_FILE_HEADER2 *) (UINTN) FfsFileHeaderPtr)->ExtendedSize)
-
-typedef UINT8 EFI_SECTION_TYPE;
-
-///
-/// Pseudo type. It is used as a wild card when retrieving sections.
-///  The section type EFI_SECTION_ALL matches all section types.
-///
-#define EFI_SECTION_ALL                   0x00
-
-///
-/// Encapsulation section Type values.
-///
-#define EFI_SECTION_COMPRESSION           0x01
-
-#define EFI_SECTION_GUID_DEFINED          0x02
-
-#define EFI_SECTION_DISPOSABLE            0x03
-
-///
-/// Leaf section Type values.
-///
-#define EFI_SECTION_PE32                  0x10
-#define EFI_SECTION_PIC                   0x11
-#define EFI_SECTION_TE                    0x12
-#define EFI_SECTION_DXE_DEPEX             0x13
-#define EFI_SECTION_VERSION               0x14
-#define EFI_SECTION_USER_INTERFACE        0x15
-#define EFI_SECTION_COMPATIBILITY16       0x16
-#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17
-#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18
-#define EFI_SECTION_RAW                   0x19
-#define EFI_SECTION_PEI_DEPEX             0x1B
-#define EFI_SECTION_SMM_DEPEX             0x1C
-
-///
-/// Common section header.
-///
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-  EFI_SECTION_TYPE  Type;
-  ///
-  /// Declares the section type.
-  ///
-} EFI_COMMON_SECTION_HEADER;
-
-typedef struct {
-  ///
-  /// A 24-bit unsigned integer that contains the total size of the section in bytes,
-  /// including the EFI_COMMON_SECTION_HEADER.
-  ///
-  UINT8             Size[3];
-
-  EFI_SECTION_TYPE  Type;
-
-  ///
-  /// If Size is 0xFFFFFF, then ExtendedSize contains the size of the section. If
-  /// Size is not equal to 0xFFFFFF, then this field does not exist.
-  ///
-  UINT32            ExtendedSize;
-} EFI_COMMON_SECTION_HEADER2;
-
-///
-/// Leaf section type that contains an
-/// IA-32 16-bit executable image.
-///
-typedef EFI_COMMON_SECTION_HEADER  EFI_COMPATIBILITY16_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_COMPATIBILITY16_SECTION2;
-
-///
-/// CompressionType of EFI_COMPRESSION_SECTION.
-///
-#define EFI_NOT_COMPRESSED        0x00
-#define EFI_STANDARD_COMPRESSION  0x01
-///
-/// An encapsulation section type in which the
-/// section data is compressed.
-///
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                      UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                       CompressionType;
-} EFI_COMPRESSION_SECTION;
-
-typedef struct {
-  ///
-  /// Usual common section header. CommonHeader.Type = EFI_SECTION_COMPRESSION.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// UINT32 that indicates the size of the section data after decompression.
-  ///
-  UINT32                        UncompressedLength;
-  ///
-  /// Indicates which compression algorithm is used.
-  ///
-  UINT8                         CompressionType;
-} EFI_COMPRESSION_SECTION2;
-
-///
-/// An encapsulation section type in which the section data is disposable.
-/// A disposable section is an encapsulation section in which the section data may be disposed of during
-/// the process of creating or updating a firmware image without significant impact on the usefulness of
-/// the file. The Type field in the section header is set to EFI_SECTION_DISPOSABLE. This
-/// allows optional or descriptive data to be included with the firmware file which can be removed in
-/// order to conserve space. The contents of this section are implementation specific, but might contain
-/// debug data or detailed integration instructions.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DISPOSABLE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DISPOSABLE_SECTION2;
-
-///
-/// The leaf section which could be used to determine the dispatch order of DXEs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_DXE_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_DXE_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a PI FV.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_FIRMWARE_VOLUME_IMAGE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_FIRMWARE_VOLUME_IMAGE_SECTION2;
-
-///
-/// The leaf section which contains a single GUID.
-///
-typedef struct {
-  ///
-  /// Common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                    SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_FREEFORM_SUBTYPE_GUID.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// This GUID is defined by the creator of the file. It is a vendor-defined file type.
-  ///
-  EFI_GUID                      SubTypeGuid;
-} EFI_FREEFORM_SUBTYPE_GUID_SECTION2;
-
-///
-/// Attributes of EFI_GUID_DEFINED_SECTION.
-///
-#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED  0x01
-#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID    0x02
-///
-/// The leaf section which is encapsulation defined by specific GUID.
-///
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                    SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                      DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                      Attributes;
-} EFI_GUID_DEFINED_SECTION;
-
-typedef struct {
-  ///
-  /// The common section header. CommonHeader.Type = EFI_SECTION_GUID_DEFINED.
-  ///
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// The GUID that defines the format of the data that follows. It is a vendor-defined section type.
-  ///
-  EFI_GUID                      SectionDefinitionGuid;
-  ///
-  /// Contains the offset in bytes from the beginning of the common header to the first byte of the data.
-  ///
-  UINT16                        DataOffset;
-  ///
-  /// The bit field that declares some specific characteristics of the section contents.
-  ///
-  UINT16                        Attributes;
-} EFI_GUID_DEFINED_SECTION2;
-
-///
-/// The leaf section which contains PE32+ image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PE32_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PE32_SECTION2;
-
-///
-/// The leaf section used to determine the dispatch order of PEIMs.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PEI_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PEI_DEPEX_SECTION2;
-
-///
-/// A leaf section type that contains a position-independent-code (PIC) image.
-/// A PIC image section is a leaf section that contains a position-independent-code (PIC) image.
-/// In addition to normal PE32+ images that contain relocation information, PEIM executables may be
-/// PIC and are referred to as PIC images. A PIC image is the same as a PE32+ image except that all
-/// relocation information has been stripped from the image and the image can be moved and will
-/// execute correctly without performing any relocation or other fix-ups. EFI_PIC_SECTION2 must
-/// be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_PIC_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_PIC_SECTION2;
-
-///
-/// The leaf section which constains the position-independent-code image.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_TE_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_TE_SECTION2;
-
-///
-/// The leaf section which contains an array of zero or more bytes.
-///
-typedef EFI_COMMON_SECTION_HEADER   EFI_RAW_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2  EFI_RAW_SECTION2;
-
-///
-/// The SMM dependency expression section is a leaf section that contains a dependency expression that
-/// is used to determine the dispatch order for SMM drivers. Before the SMRAM invocation of the
-/// SMM driver's entry point, this dependency expression must evaluate to TRUE. See the Platform
-/// Initialization Specification, Volume 2, for details regarding the format of the dependency expression.
-/// The dependency expression may refer to protocols installed in either the UEFI or the SMM protocol
-/// database. EFI_SMM_DEPEX_SECTION2 must be used if the section is 16MB or larger.
-///
-typedef EFI_COMMON_SECTION_HEADER EFI_SMM_DEPEX_SECTION;
-typedef EFI_COMMON_SECTION_HEADER2 EFI_SMM_DEPEX_SECTION2;
-
-///
-/// The leaf section which contains a unicode string that
-/// is human readable file name.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      FileNameString[1];
-} EFI_USER_INTERFACE_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  CHAR16                        FileNameString[1];
-} EFI_USER_INTERFACE_SECTION2;
-
-///
-/// The leaf section which contains a numeric build number and
-/// an optional unicode string that represents the file revision.
-///
-typedef struct {
-  EFI_COMMON_SECTION_HEADER   CommonHeader;
-  UINT16                      BuildNumber;
-
-  ///
-  /// Array of unicode string.
-  ///
-  CHAR16                      VersionString[1];
-} EFI_VERSION_SECTION;
-
-typedef struct {
-  EFI_COMMON_SECTION_HEADER2    CommonHeader;
-  ///
-  /// A UINT16 that represents a particular build. Subsequent builds have monotonically
-  /// increasing build numbers relative to earlier builds.
-  ///
-  UINT16                        BuildNumber;
-  CHAR16                        VersionString[1];
-} EFI_VERSION_SECTION2;
-
-#define IS_SECTION2(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff) == 0x00ffffff)
-
-#define SECTION_SIZE(SectionHeaderPtr) \
-    ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) (UINTN) SectionHeaderPtr)->Size) & 0x00ffffff))
-
-#define SECTION2_SIZE(SectionHeaderPtr) \
-    (((EFI_COMMON_SECTION_HEADER2 *) (UINTN) SectionHeaderPtr)->ExtendedSize)
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspfv.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspfv.h
deleted file mode 100644
index 9688cf4..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspfv.h
+++ /dev/null
@@ -1,249 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_FIRMWAREVOLUME_H__
-#define __PI_FIRMWAREVOLUME_H__
-
-#include <fsptypes.h>
-
-///
-/// EFI_FV_FILE_ATTRIBUTES
-///
-typedef UINT32  EFI_FV_FILE_ATTRIBUTES;
-
-//
-// Value of EFI_FV_FILE_ATTRIBUTES.
-//
-#define EFI_FV_FILE_ATTRIB_ALIGNMENT      0x0000001F
-#define EFI_FV_FILE_ATTRIB_FIXED          0x00000100
-#define EFI_FV_FILE_ATTRIB_MEMORY_MAPPED  0x00000200
-
-///
-/// type of EFI FVB attribute
-///
-typedef UINT32  EFI_FVB_ATTRIBUTES_2;
-
-//
-// Attributes bit definitions
-//
-#define EFI_FVB2_READ_DISABLED_CAP  0x00000001
-#define EFI_FVB2_READ_ENABLED_CAP   0x00000002
-#define EFI_FVB2_READ_STATUS        0x00000004
-#define EFI_FVB2_WRITE_DISABLED_CAP 0x00000008
-#define EFI_FVB2_WRITE_ENABLED_CAP  0x00000010
-#define EFI_FVB2_WRITE_STATUS       0x00000020
-#define EFI_FVB2_LOCK_CAP           0x00000040
-#define EFI_FVB2_LOCK_STATUS        0x00000080
-#define EFI_FVB2_STICKY_WRITE       0x00000200
-#define EFI_FVB2_MEMORY_MAPPED      0x00000400
-#define EFI_FVB2_ERASE_POLARITY     0x00000800
-#define EFI_FVB2_READ_LOCK_CAP      0x00001000
-#define EFI_FVB2_READ_LOCK_STATUS   0x00002000
-#define EFI_FVB2_WRITE_LOCK_CAP     0x00004000
-#define EFI_FVB2_WRITE_LOCK_STATUS  0x00008000
-#define EFI_FVB2_ALIGNMENT          0x001F0000
-#define EFI_FVB2_ALIGNMENT_1        0x00000000
-#define EFI_FVB2_ALIGNMENT_2        0x00010000
-#define EFI_FVB2_ALIGNMENT_4        0x00020000
-#define EFI_FVB2_ALIGNMENT_8        0x00030000
-#define EFI_FVB2_ALIGNMENT_16       0x00040000
-#define EFI_FVB2_ALIGNMENT_32       0x00050000
-#define EFI_FVB2_ALIGNMENT_64       0x00060000
-#define EFI_FVB2_ALIGNMENT_128      0x00070000
-#define EFI_FVB2_ALIGNMENT_256      0x00080000
-#define EFI_FVB2_ALIGNMENT_512      0x00090000
-#define EFI_FVB2_ALIGNMENT_1K       0x000A0000
-#define EFI_FVB2_ALIGNMENT_2K       0x000B0000
-#define EFI_FVB2_ALIGNMENT_4K       0x000C0000
-#define EFI_FVB2_ALIGNMENT_8K       0x000D0000
-#define EFI_FVB2_ALIGNMENT_16K      0x000E0000
-#define EFI_FVB2_ALIGNMENT_32K      0x000F0000
-#define EFI_FVB2_ALIGNMENT_64K      0x00100000
-#define EFI_FVB2_ALIGNMENT_128K     0x00110000
-#define EFI_FVB2_ALIGNMENT_256K     0x00120000
-#define EFI_FVB2_ALIGNMENT_512K     0x00130000
-#define EFI_FVB2_ALIGNMENT_1M       0x00140000
-#define EFI_FVB2_ALIGNMENT_2M       0x00150000
-#define EFI_FVB2_ALIGNMENT_4M       0x00160000
-#define EFI_FVB2_ALIGNMENT_8M       0x00170000
-#define EFI_FVB2_ALIGNMENT_16M      0x00180000
-#define EFI_FVB2_ALIGNMENT_32M      0x00190000
-#define EFI_FVB2_ALIGNMENT_64M      0x001A0000
-#define EFI_FVB2_ALIGNMENT_128M     0x001B0000
-#define EFI_FVB2_ALIGNMENT_256M     0x001C0000
-#define EFI_FVB2_ALIGNMENT_512M     0x001D0000
-#define EFI_FVB2_ALIGNMENT_1G       0x001E0000
-#define EFI_FVB2_ALIGNMENT_2G       0x001F0000
-
-
-typedef struct {
-  ///
-  /// The number of sequential blocks which are of the same size.
-  ///
-  UINT32 NumBlocks;
-  ///
-  /// The size of the blocks.
-  ///
-  UINT32 Length;
-} EFI_FV_BLOCK_MAP_ENTRY;
-
-///
-/// Describes the features and layout of the firmware volume.
-///
-typedef struct {
-  ///
-  /// The first 16 bytes are reserved to allow for the reset vector of
-  /// processors whose reset vector is at address 0.
-  ///
-  UINT8                     ZeroVector[16];
-  ///
-  /// Declares the file system with which the firmware volume is formatted.
-  ///
-  EFI_GUID                  FileSystemGuid;
-  ///
-  /// Length in bytes of the complete firmware volume, including the header.
-  ///
-  UINT64                    FvLength;
-  ///
-  /// Set to EFI_FVH_SIGNATURE
-  ///
-  UINT32                    Signature;
-  ///
-  /// Declares capabilities and power-on defaults for the firmware volume.
-  ///
-  EFI_FVB_ATTRIBUTES_2      Attributes;
-  ///
-  /// Length in bytes of the complete firmware volume header.
-  ///
-  UINT16                    HeaderLength;
-  ///
-  /// A 16-bit checksum of the firmware volume header. A valid header sums to zero.
-  ///
-  UINT16                    Checksum;
-  ///
-  /// Offset, relative to the start of the header, of the extended header
-  /// (EFI_FIRMWARE_VOLUME_EXT_HEADER) or zero if there is no extended header.
-  ///
-  UINT16                    ExtHeaderOffset;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT8                     Reserved[1];
-  ///
-  /// Set to 2. Future versions of this specification may define new header fields and will
-  /// increment the Revision field accordingly.
-  ///
-  UINT8                     Revision;
-  ///
-  /// An array of run-length encoded FvBlockMapEntry structures. The array is
-  /// terminated with an entry of {0,0}.
-  ///
-  EFI_FV_BLOCK_MAP_ENTRY    BlockMap[1];
-} EFI_FIRMWARE_VOLUME_HEADER;
-
-#define EFI_FVH_SIGNATURE SIGNATURE_32 ('_', 'F', 'V', 'H')
-
-///
-/// Firmware Volume Header Revision definition
-///
-#define EFI_FVH_REVISION  0x02
-
-///
-/// Extension header pointed by ExtHeaderOffset of volume header.
-///
-typedef struct {
-  ///
-  /// Firmware volume name.
-  ///
-  EFI_GUID  FvName;
-  ///
-  /// Size of the rest of the extension header, including this structure.
-  ///
-  UINT32    ExtHeaderSize;
-} EFI_FIRMWARE_VOLUME_EXT_HEADER;
-
-///
-/// Entry struture for describing FV extension header
-///
-typedef struct {
-  ///
-  /// Size of this header extension.
-  ///
-  UINT16    ExtEntrySize;
-  ///
-  /// Type of the header.
-  ///
-  UINT16    ExtEntryType;
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY;
-
-#define EFI_FV_EXT_TYPE_OEM_TYPE  0x01
-///
-/// This extension header provides a mapping between a GUID and an OEM file type.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY Hdr;
-  ///
-  /// A bit mask, one bit for each file type between 0xC0 (bit 0) and 0xDF (bit 31). If a bit
-  /// is '1', then the GUID entry exists in Types. If a bit is '0' then no GUID entry exists in Types.
-  ///
-  UINT32    TypeMask;
-  ///
-  /// An array of GUIDs, each GUID representing an OEM file type.
-  ///
-  /// EFI_GUID  Types[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_OEM_TYPE;
-
-#define EFI_FV_EXT_TYPE_GUID_TYPE 0x0002
-
-///
-/// This extension header EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE provides a vendor specific
-/// GUID FormatType type which includes a length and a successive series of data bytes.
-///
-typedef struct {
-  ///
-  /// Standard extension entry, with the type EFI_FV_EXT_TYPE_OEM_TYPE.
-  ///
-  EFI_FIRMWARE_VOLUME_EXT_ENTRY     Hdr;
-  ///
-  /// Vendor-specific GUID.
-  ///
-  EFI_GUID                          FormatType;
-  ///
-  /// An arry of bytes of length Length.
-  ///
-  /// UINT8                             Data[1];
-  ///
-} EFI_FIRMWARE_VOLUME_EXT_ENTRY_GUID_TYPE;
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspguid.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspguid.h
deleted file mode 100644
index b9a6183..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspguid.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/** @file
-
-Copyright (C) 2014, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_GUID_H__
-#define __FSP_GUID_H__
-
-/**
-
- FSP specific GUID HOB definitions
-
- **/
-#define FSP_INFO_HEADER_GUID \
-  { \
-  0x912740BE, 0x2284, 0x4734, {0xB9, 0x71, 0x84, 0xB0, 0x27, 0x35, 0x3F, 0x0C} \
-  }
-
-#define FSP_NON_VOLATILE_STORAGE_HOB_GUID \
-  { \
-  0x721acf02, 0x4d77, 0x4c2a, { 0xb3, 0xdc, 0x27, 0xb, 0x7b, 0xa9, 0xe4, 0xb0 } \
-  }
-
-#define FSP_BOOTLOADER_TEMPORARY_MEMORY_HOB_GUID \
-  { \
-  0xbbcff46c, 0xc8d3, 0x4113, { 0x89, 0x85, 0xb9, 0xd4, 0xf3, 0xb3, 0xf6, 0x4e } \
-  }
-
-#define FSP_HOB_RESOURCE_OWNER_FSP_GUID \
-  { \
-  0x69a79759, 0x1373, 0x4367, { 0xa6, 0xc4, 0xc7, 0xf5, 0x9e, 0xfd, 0x98, 0x6e } \
-  }
-
-#define FSP_HOB_RESOURCE_OWNER_TSEG_GUID \
-  { \
-  0xd038747c, 0xd00c, 0x4980, { 0xb3, 0x19, 0x49, 0x01, 0x99, 0xa4, 0x7d, 0x55 } \
-  }
-
-#define FSP_HOB_RESOURCE_OWNER_GRAPHICS_GUID \
-  { \
-  0x9c7c3aa7, 0x5332, 0x4917, { 0x82, 0xb9, 0x56, 0xa5, 0xf3, 0xe6, 0x2a, 0x07 } \
-  }
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fsphob.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fsphob.h
deleted file mode 100644
index 0f743b5..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fsphob.h
+++ /dev/null
@@ -1,544 +0,0 @@
-/** @file
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __PI_HOB_H__
-#define __PI_HOB_H__
-
-#include <fsptypes.h>
-
-//
-// HobType of EFI_HOB_GENERIC_HEADER.
-//
-#define EFI_HOB_TYPE_MEMORY_ALLOCATION    0x0002
-#define EFI_HOB_TYPE_RESOURCE_DESCRIPTOR  0x0003
-#define EFI_HOB_TYPE_GUID_EXTENSION       0x0004
-#define EFI_HOB_TYPE_UNUSED               0xFFFE
-#define EFI_HOB_TYPE_END_OF_HOB_LIST      0xFFFF
-
-///
-/// Describes the format and size of the data inside the HOB.
-/// All HOBs must contain this generic HOB header.
-///
-typedef struct {
-  ///
-  /// Identifies the HOB data structure type.
-  ///
-  UINT16    HobType;
-  ///
-  /// The length in bytes of the HOB.
-  ///
-  UINT16    HobLength;
-  ///
-  /// This field must always be set to zero.
-  ///
-  UINT32    Reserved;
-} EFI_HOB_GENERIC_HEADER;
-
-///
-/// Enumeration of memory types introduced in UEFI.
-///
-typedef enum {
-  ///
-  /// Not used.
-  ///
-  EfiReservedMemoryType,
-  ///
-  /// The code portions of a loaded application.
-  /// (Note that UEFI OS loaders are UEFI applications.)
-  ///
-  EfiLoaderCode,
-  ///
-  /// The data portions of a loaded application and the default data allocation
-  /// type used by an application to allocate pool memory.
-  ///
-  EfiLoaderData,
-  ///
-  /// The code portions of a loaded Boot Services Driver.
-  ///
-  EfiBootServicesCode,
-  ///
-  /// The data portions of a loaded Boot Serves Driver, and the default data
-  /// allocation type used by a Boot Services Driver to allocate pool memory.
-  ///
-  EfiBootServicesData,
-  ///
-  /// The code portions of a loaded Runtime Services Driver.
-  ///
-  EfiRuntimeServicesCode,
-  ///
-  /// The data portions of a loaded Runtime Services Driver and the default
-  /// data allocation type used by a Runtime Services Driver to allocate pool memory.
-  ///
-  EfiRuntimeServicesData,
-  ///
-  /// Free (unallocated) memory.
-  ///
-  EfiConventionalMemory,
-  ///
-  /// Memory in which errors have been detected.
-  ///
-  EfiUnusableMemory,
-  ///
-  /// Memory that holds the ACPI tables.
-  ///
-  EfiACPIReclaimMemory,
-  ///
-  /// Address space reserved for use by the firmware.
-  ///
-  EfiACPIMemoryNVS,
-  ///
-  /// Used by system firmware to request that a memory-mapped IO region
-  /// be mapped by the OS to a virtual address so it can be accessed by EFI runtime services.
-  ///
-  EfiMemoryMappedIO,
-  ///
-  /// System memory-mapped IO region that is used to translate memory
-  /// cycles to IO cycles by the processor.
-  ///
-  EfiMemoryMappedIOPortSpace,
-  ///
-  /// Address space reserved by the firmware for code that is part of the processor.
-  ///
-  EfiPalCode,
-  EfiMaxMemoryType
-} EFI_MEMORY_TYPE;
-
-///
-/// EFI_HOB_MEMORY_ALLOCATION_HEADER describes the
-/// various attributes of the logical memory allocation. The type field will be used for
-/// subsequent inclusion in the UEFI memory map.
-///
-typedef struct {
-  ///
-  /// A GUID that defines the memory allocation region's type and purpose, as well as
-  /// other fields within the memory allocation HOB. This GUID is used to define the
-  /// additional data within the HOB that may be present for the memory allocation HOB.
-  /// Type EFI_GUID is defined in InstallProtocolInterface() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_GUID              Name;
-
-  ///
-  /// The base address of memory allocated by this HOB. Type
-  /// EFI_PHYSICAL_ADDRESS is defined in AllocatePages() in the UEFI 2.0
-  /// specification.
-  ///
-  EFI_PHYSICAL_ADDRESS  MemoryBaseAddress;
-
-  ///
-  /// The length in bytes of memory allocated by this HOB.
-  ///
-  UINT64                MemoryLength;
-
-  ///
-  /// Defines the type of memory allocated by this HOB. The memory type definition
-  /// follows the EFI_MEMORY_TYPE definition. Type EFI_MEMORY_TYPE is defined
-  /// in AllocatePages() in the UEFI 2.0 specification.
-  ///
-  EFI_MEMORY_TYPE       MemoryType;
-
-  ///
-  /// Padding for Itanium processor family
-  ///
-  UINT8                 Reserved[4];
-} EFI_HOB_MEMORY_ALLOCATION_HEADER;
-
-///
-/// Describes all memory ranges used during the HOB producer
-/// phase that exist outside the HOB list. This HOB type
-/// describes how memory is used, not the physical attributes of memory.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_MEMORY_ALLOCATION.
-  ///
-  EFI_HOB_GENERIC_HEADER            Header;
-  ///
-  /// An instance of the EFI_HOB_MEMORY_ALLOCATION_HEADER that describes the
-  /// various attributes of the logical memory allocation.
-  ///
-  EFI_HOB_MEMORY_ALLOCATION_HEADER  AllocDescriptor;
-  //
-  // Additional data pertaining to the "Name" Guid memory
-  // may go here.
-  //
-} EFI_HOB_MEMORY_ALLOCATION;
-
-///
-/// The resource type.
-///
-typedef UINT32 EFI_RESOURCE_TYPE;
-
-//
-// Value of ResourceType in EFI_HOB_RESOURCE_DESCRIPTOR.
-//
-#define EFI_RESOURCE_SYSTEM_MEMORY          0x00000000
-#define EFI_RESOURCE_MEMORY_MAPPED_IO       0x00000001
-#define EFI_RESOURCE_IO                     0x00000002
-#define EFI_RESOURCE_FIRMWARE_DEVICE        0x00000003
-#define EFI_RESOURCE_MEMORY_MAPPED_IO_PORT  0x00000004
-#define EFI_RESOURCE_MEMORY_RESERVED        0x00000005
-#define EFI_RESOURCE_IO_RESERVED            0x00000006
-#define EFI_RESOURCE_MAX_MEMORY_TYPE        0x00000007
-
-///
-/// A type of recount attribute type.
-///
-typedef UINT32 EFI_RESOURCE_ATTRIBUTE_TYPE;
-
-//
-// These types can be ORed together as needed.
-//
-// The first three enumerations describe settings
-//
-#define EFI_RESOURCE_ATTRIBUTE_PRESENT              0x00000001
-#define EFI_RESOURCE_ATTRIBUTE_INITIALIZED          0x00000002
-#define EFI_RESOURCE_ATTRIBUTE_TESTED               0x00000004
-//
-// The rest of the settings describe capabilities
-//
-#define EFI_RESOURCE_ATTRIBUTE_SINGLE_BIT_ECC           0x00000008
-#define EFI_RESOURCE_ATTRIBUTE_MULTIPLE_BIT_ECC         0x00000010
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_1           0x00000020
-#define EFI_RESOURCE_ATTRIBUTE_ECC_RESERVED_2           0x00000040
-#define EFI_RESOURCE_ATTRIBUTE_READ_PROTECTED           0x00000080
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_PROTECTED          0x00000100
-#define EFI_RESOURCE_ATTRIBUTE_EXECUTION_PROTECTED      0x00000200
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE              0x00000400
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE        0x00000800
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE  0x00001000
-#define EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE     0x00002000
-#define EFI_RESOURCE_ATTRIBUTE_16_BIT_IO                0x00004000
-#define EFI_RESOURCE_ATTRIBUTE_32_BIT_IO                0x00008000
-#define EFI_RESOURCE_ATTRIBUTE_64_BIT_IO                0x00010000
-#define EFI_RESOURCE_ATTRIBUTE_UNCACHED_EXPORTED        0x00020000
-
-///
-/// Describes the resource properties of all fixed,
-/// nonrelocatable resource ranges found on the processor
-/// host bus during the HOB producer phase.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_RESOURCE_DESCRIPTOR.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID representing the owner of the resource. This GUID is used by HOB
-  /// consumer phase components to correlate device ownership of a resource.
-  ///
-  EFI_GUID                    Owner;
-  ///
-  /// The resource type enumeration as defined by EFI_RESOURCE_TYPE.
-  ///
-  EFI_RESOURCE_TYPE           ResourceType;
-  ///
-  /// Resource attributes as defined by EFI_RESOURCE_ATTRIBUTE_TYPE.
-  ///
-  EFI_RESOURCE_ATTRIBUTE_TYPE ResourceAttribute;
-  ///
-  /// The physical start address of the resource region.
-  ///
-  EFI_PHYSICAL_ADDRESS        PhysicalStart;
-  ///
-  /// The number of bytes of the resource region.
-  ///
-  UINT64                      ResourceLength;
-} EFI_HOB_RESOURCE_DESCRIPTOR;
-
-///
-/// Allows writers of executable content in the HOB producer phase to
-/// maintain and manage HOBs with specific GUID.
-///
-typedef struct {
-  ///
-  /// The HOB generic header. Header.HobType = EFI_HOB_TYPE_GUID_EXTENSION.
-  ///
-  EFI_HOB_GENERIC_HEADER      Header;
-  ///
-  /// A GUID that defines the contents of this HOB.
-  ///
-  EFI_GUID                    Name;
-  //
-  // Guid specific data goes here
-  //
-} EFI_HOB_GUID_TYPE;
-
-///
-/// Union of all the possible HOB Types.
-///
-typedef union {
-  EFI_HOB_GENERIC_HEADER              *Header;
-  EFI_HOB_MEMORY_ALLOCATION           *MemoryAllocation;
-  EFI_HOB_RESOURCE_DESCRIPTOR         *ResourceDescriptor;
-  EFI_HOB_GUID_TYPE                   *Guid;
-  UINT8                               *Raw;
-} EFI_PEI_HOB_POINTERS;
-
-
-/**
-  Returns the type of a HOB.
-
-  This macro returns the HobType field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobType.
-
-**/
-#define GET_HOB_TYPE(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobType)
-
-/**
-  Returns the length, in bytes, of a HOB.
-
-  This macro returns the HobLength field from the HOB header for the
-  HOB specified by HobStart.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return HobLength.
-
-**/
-#define GET_HOB_LENGTH(HobStart) \
-  ((*(EFI_HOB_GENERIC_HEADER **)&(HobStart))->HobLength)
-
-/**
-  Returns a pointer to the next HOB in the HOB list.
-
-  This macro returns a pointer to HOB that follows the
-  HOB specified by HobStart in the HOB List.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @return A pointer to the next HOB in the HOB list.
-
-**/
-#define GET_NEXT_HOB(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + GET_HOB_LENGTH (HobStart))
-
-/**
-  Determines if a HOB is the last HOB in the HOB list.
-
-  This macro determine if the HOB specified by HobStart is the
-  last HOB in the HOB list.  If HobStart is last HOB in the HOB list,
-  then TRUE is returned.  Otherwise, FALSE is returned.
-
-  @param  HobStart   A pointer to a HOB.
-
-  @retval TRUE       The HOB specified by HobStart is the last HOB in the HOB list.
-  @retval FALSE      The HOB specified by HobStart is not the last HOB in the HOB list.
-
-**/
-#define END_OF_HOB_LIST(HobStart)  (GET_HOB_TYPE (HobStart) == (UINT16)EFI_HOB_TYPE_END_OF_HOB_LIST)
-
-/**
-  Returns a pointer to data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns a pointer to the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  A pointer to the data buffer in a HOB.
-
-**/
-#define GET_GUID_HOB_DATA(HobStart) \
-  (VOID *)(*(UINT8 **)&(HobStart) + sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the size of the data buffer from a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  This macro returns the size, in bytes, of the data buffer in a HOB specified by HobStart.
-  HobStart is assumed to be a HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
-
-  @param   GuidHob   A pointer to a HOB.
-
-  @return  The size of the data buffer.
-**/
-#define GET_GUID_HOB_DATA_SIZE(HobStart) \
-  (UINT16)(GET_HOB_LENGTH (HobStart) - sizeof (EFI_HOB_GUID_TYPE))
-
-/**
-  Returns the pointer to the HOB list.
-
-  This function returns the pointer to first HOB in the list.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @return The pointer to the HOB list.
-
-**/
-VOID *
-EFIAPI
-GetHobList (
-  VOID
-  );
-
-/**
-  Returns the next instance of a HOB type from the starting HOB.
-
-  This function searches the first instance of a HOB type from the starting HOB pointer.
-  If there does not exist such HOB type from the starting HOB pointer, it will return NULL.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If HobStart is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-  @param  HobStart      The starting HOB pointer to search from.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextHob (
-  UINT16                 Type,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of a HOB type among the whole HOB list.
-
-  This function searches the first instance of a HOB type among the whole HOB list.
-  If there does not exist such HOB type in the HOB list, it will return NULL.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-
-  @param  Type          The HOB type to return.
-
-  @return The next instance of a HOB type from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetFirstHob (
-  UINT16                 Type
-  );
-
-/**
-  Returns the next instance of the matched GUID HOB from the starting HOB.
-
-  This function searches the first instance of a HOB from the starting HOB pointer.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-  In contrast with macro GET_NEXT_HOB(), this function does not skip the starting HOB pointer
-  unconditionally: it returns HobStart back if HobStart itself meets the requirement;
-  caller is required to use GET_NEXT_HOB() if it wishes to skip current HobStart.
-
-  If Guid is NULL, then ASSERT().
-  If HobStart is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-  @param  HobStart      A pointer to a Guid.
-
-  @return The next instance of the matched GUID HOB from the starting HOB.
-
-**/
-VOID *
-EFIAPI
-GetNextGuidHob (
-  CONST EFI_GUID         *Guid,
-  CONST VOID             *HobStart
-  );
-
-/**
-  Returns the first instance of the matched GUID HOB among the whole HOB list.
-
-  This function searches the first instance of a HOB among the whole HOB list.
-  Such HOB should satisfy two conditions:
-  its HOB type is EFI_HOB_TYPE_GUID_EXTENSION and its GUID Name equals to the input Guid.
-  If there does not exist such HOB from the starting HOB pointer, it will return NULL.
-  Caller is required to apply GET_GUID_HOB_DATA () and GET_GUID_HOB_DATA_SIZE ()
-  to extract the data section and its size info respectively.
-
-  If the pointer to the HOB list is NULL, then ASSERT().
-  If Guid is NULL, then ASSERT().
-
-  @param  Guid          The GUID to match with in the HOB list.
-
-  @return The first instance of the matched GUID HOB among the whole HOB list.
-
-**/
-VOID *
-EFIAPI
-GetFirstGuidHob (
-  CONST EFI_GUID         *Guid
-  );
-
-/**
-  Compares two GUIDs.
-
-  This function compares Guid1 to Guid2.  If the GUIDs are identical then TRUE is returned.
-  If there are any bit differences in the two GUIDs, then FALSE is returned.
-
-  If Guid1 is NULL, then ASSERT().
-  If Guid2 is NULL, then ASSERT().
-
-  @param  Guid1       A pointer to a 128 bit GUID.
-  @param  Guid2       A pointer to a 128 bit GUID.
-
-  @retval TRUE        Guid1 and Guid2 are identical.
-  @retval FALSE       Guid1 and Guid2 are not identical.
-
-**/
-BOOLEAN
-EFIAPI
-CompareGuid (
-  CONST EFI_GUID  *Guid1,
-  CONST EFI_GUID  *Guid2
-  );
-
-/**
-  Reads a 64-bit value from memory that may be unaligned.
-
-  This function returns the 64-bit value pointed to by Buffer. The function
-  guarantees that the read operation does not produce an alignment fault.
-
-  If the Buffer is NULL, then ASSERT().
-
-  @param  Buffer  Pointer to a 64-bit value that may be unaligned.
-
-  @return The 64-bit value read from Buffer.
-
-**/
-UINT64
-EFIAPI
-ReadUnaligned64 (
-  CONST UINT64              *Buffer
-  );
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspinfoheader.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspinfoheader.h
deleted file mode 100644
index 28382cf..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspinfoheader.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*++
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_INFO_HEADER_H_
-#define _FSP_INFO_HEADER_H_
-
-#pragma pack(1)
-
-typedef struct  {
-
-  UINT32  Signature;       // Off 0x94
-  UINT32  HeaderLength;
-  UINT8   Reserved1[3];
-  UINT8   HeaderRevision;
-  UINT32  ImageRevision;
-
-  CHAR8   ImageId[8];      // Off 0xA4
-  UINT32  ImageSize;
-  UINT32  ImageBase;
-
-  UINT32  ImageAttribute;  // Off 0xB4
-  UINT32  CfgRegionOffset;
-  UINT32  CfgRegionSize;
-  UINT32  ApiEntryNum;
-
-  UINT32  NemInitEntry;    // Off 0xC4
-  UINT32  FspInitEntry;
-  UINT32  NotifyPhaseEntry;
-  UINT32  Reserved2;
-
-} FSP_INFO_HEADER;
-
-#pragma pack()
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspplatform.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspplatform.h
deleted file mode 100644
index c35dca0..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspplatform.h
+++ /dev/null
@@ -1,114 +0,0 @@
-/**
-
-Copyright (C) 2013 - 2015, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef _FSP_PLATFORM_H_
-#define _FSP_PLATFORM_H_
-
-#include "fsptypes.h"
-#include "fspapi.h"
-
-//
-// Maximum number of SDRAM channels supported by each CPU
-//
-#define MAX_CHANNELS                 2
-//
-// Maximum number of DIMM sockets supported by each channel
-//
-#define MAX_DIMMS                    2
-
-#pragma pack(1)
-//
-// SPD DDR3 structure
-//
-typedef struct {
-  UINT8  DRAMDeviceType;                 // 2   DRAM Device Type
-  UINT8  ModuleType;                     // 3   Module Type
-  UINT8  SDRAMDensityAndBanks;           // 4   SDRAM Density and Banks
-  UINT8  SDRAMAddressing;                // 5   SDRAM Addressing
-  UINT8  VDD;                            // 6   Module Nominal Voltage
-  UINT8  ModuleOrganization;             // 7   Module Organization
-  UINT8  ModuleMemoryBusWidth;           // 8   Module Memory Bus Width
-  UINT8  TimebaseDividend;               // 10  Medium Timebase (MTB) Dividend
-  UINT8  TimebaseDivisor;                // 11  Medium Timebase (MTB) Divisor
-  UINT8  SDRAMMinimumCycleTime;          // 12  SDRAM Minimum Cycle Time (tCKmin)
-  UINT8  CASLatenciesLSB;                // 14  CAS Latencies Supported, Least Significant Byte
-  UINT8  CASLatenciesMSB;                // 15  CAS Latencies Supported, Most Significant Byte
-  UINT8  MinimumCASLatencyTime;          // 16  Minimum CAS Latency Time (tAAmin)
-  UINT8  MinimumWriteRecoveryTime;       // 17  Minimum Write Recovery Time (tWRmin)
-  UINT8  MinimumRASToCASDelayTime;       // 18  Minimum RAS# to CAS# Delay Time (tRCDmin)
-  UINT8  MinimumRowToRowDelayTime;       // 19  Minimum Row Active to Row Active Delay Time (tRRDmin)
-  UINT8  MinimumRowPrechargeDelayTime;   // 20  Minimum Row Precharge Delay Time (tRPmin)
-  UINT8  UpperNibblesFortRASAndtRC;      // 21  Upper Nibbles for tRAS and tRC
-  UINT8  tRASmin;                        // 22  Minimum Active to Precharge Delay Time (tRASmin), Least Significant Byte
-  UINT8  tRCmin;                         // 23  Minimum Active to Active/Refresh Delay Time (tRCmin), Least Significant Byte
-  UINT8  tRFCminLeastSignificantByte;    // 24  Minimum Refresh Recovery Delay Time (tRFCmin), Least Significant Byte
-  UINT8  tRFCminMostSignificantByte;     // 25  Minimum Refresh Recovery Delay Time (tRFCmin), Most Significant Byte
-  UINT8  tWTRmin;                        // 26  Minimum Internal Write to Read Command Delay Time (tWTRmin)
-  UINT8  tRTPmin;                        // 27  Minimum Internal Read to Precharge Command Delay Time (tRTPmin)
-  UINT8  UpperNibbleFortFAW;             // 28  Upper Nibble for tFAW
-  UINT8  tFAWmin;                        // 29  Minimum Four Activate Window Delay Time (tFAWmin)
-  UINT8  SdramThermalRefreshOption;      // 31  SdramThermalRefreshOption
-  UINT8  ModuleThermalSensor;            // 32  ModuleThermalSensor
-  UINT8  SDRAMDeviceType;                // 33  SDRAM Device Type
-  UINT8  tCKminFine;                     // 34  Fine Offset for SDRAM Minimum Cycle Time (tCKmin)
-  UINT8  tAAminFine;                     // 35  Fine Offset for Minimum CAS Latency Time (tAAmin)
-  UINT8  MACCount;                       // 41  Maximum Activate Count
-  UINT8  ReferenceRawCardUsed;           // 62  Reference Raw Card Used
-  UINT8  AddressMappingEdgeConnector;    // 63  Address Mapping from Edge Connector to DRAM
-  UINT8  ModuleManufacturerIdCodeLsb;    // 117 Module Manufacturer ID Code, Least Significant Byte
-  UINT8  ModuleManufacturerIdCodeMsb;    // 118 Module Manufacturer ID Code, Most Significant Byte
-  UINT8  ModuleManufacturingLocation;    // 119 Module Manufacturing Location
-  UINT8  ModuleManufacturingDateYear;    // 120 Module Manufacturing Date Year
-  UINT8  ModuleManufacturingDateWW;      // 121 Module Manufacturing Date creation work week
-  UINT8  ModuleSerialNumberA;            // 122 Module Serial Number A
-  UINT8  ModuleSerialNumberB;            // 123 Module Serial Number B
-  UINT8  ModuleSerialNumberC;            // 124 Module Serial Number C
-  UINT8  ModuleSerialNumberD;            // 125 Module Serial Number D
-  UINT8  DramManufacturerIdLsb;          // 148 DRAM Manufacturer ID Code, LSB
-  UINT8  DramManufacturerIdMsb;          // 149 DRAM Manufacturer ID Code, MSB
-} MEM_DOWN_DIMM_SPD_DATA;
-
-typedef struct {
-  UINT32   MemoryDownDimmPopulation;  // 0 - Empty, 1 - DIMM populated
-  MEM_DOWN_DIMM_SPD_DATA   MemoryDownDimmSpdData;
-} MEM_DOWN_DIMM_CONFIG;
-
-typedef struct {
-  CONST MEM_DOWN_DIMM_CONFIG  *MemDownDimmConfig[MAX_CHANNELS][MAX_DIMMS];
-} FSP_INIT_RT_PLATFORM_BUFFER;
-
-typedef struct {
-  FSP_INIT_RT_COMMON_BUFFER  Common;
-  FSP_INIT_RT_PLATFORM_BUFFER Platform;
-} FSP_INIT_RT_BUFFER;
-
-#pragma pack()
-
-#endif
\ No newline at end of file
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspsupport.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspsupport.h
deleted file mode 100644
index dbbbf77..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspsupport.h
+++ /dev/null
@@ -1,95 +0,0 @@
-/** @file
-
-Copyright (C) 2013 - 2014, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-**/
-
-#ifndef __FSP_SUPPORT_H__
-#define __FSP_SUPPORT_H__
-
-#include "fsptypes.h"
-#include "fspfv.h"
-#include "fspffs.h"
-#include "fspapi.h"
-#include "fsphob.h"
-#include "fspguid.h"
-#include "fspplatform.h"
-#include "fspinfoheader.h"
-#include "fspbootmode.h"
-#include "fspvpd.h"
-
-UINT32
-GetUsableLowMemTop (
-  CONST VOID             *HobListPtr
-  );
-
-UINT64
-GetUsableHighMemTop (
-  CONST VOID             *HobListPtr
-  );
-
-VOID *
-GetGuidHobDataBuffer (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length,
-  EFI_GUID               *Guid
-  );
-
-VOID
-GetFspReservedMemoryFromGuid (
-  CONST VOID             *HobListPtr,
-  EFI_PHYSICAL_ADDRESS   *FspMemoryBase,
-  UINT64                 *FspMemoryLength,
-  EFI_GUID               *FspReservedMemoryGuid
-  );
-
-UINT32
-GetTsegReservedMemory (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-);
-
-UINT32
-GetFspReservedMemory (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-);
-
-VOID*
-GetFspNvsDataBuffer (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-  );
-
-VOID *
-GetBootloaderTempMemoryBuffer (
-  CONST VOID             *HobListPtr,
-  UINT32                 *Length
-  );
-
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fsptypes.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fsptypes.h
deleted file mode 100644
index da19250..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fsptypes.h
+++ /dev/null
@@ -1,183 +0,0 @@
-/******************************************************************************
-
-Copyright (C) 2013, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
- *****************************************************************************/
-
-/** \file  fsptypes.h
- *
- *
- */
-
-#ifndef __FSP_TYPES_H__
-#define __FSP_TYPES_H__
-
-///
-/// 8-byte unsigned value.
-///
-typedef unsigned long long  UINT64;
-///
-/// 8-byte signed value.
-///
-typedef long long           INT64;
-///
-/// 4-byte unsigned value.
-///
-typedef unsigned int        UINT32;
-///
-/// 4-byte signed value.
-///
-typedef int                 INT32;
-///
-/// 2-byte unsigned value.
-///
-typedef unsigned short      UINT16;
-///
-/// 2-byte Character.  Unless otherwise specified all strings are stored in the
-/// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.
-///
-typedef unsigned short      CHAR16;
-///
-/// 2-byte signed value.
-///
-typedef short               INT16;
-///
-/// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other
-/// values are undefined.
-///
-typedef unsigned char       BOOLEAN;
-///
-/// 1-byte unsigned value.
-///
-typedef unsigned char       UINT8;
-///
-/// 1-byte Character
-///
-typedef char                CHAR8;
-///
-/// 1-byte signed value
-///
-typedef char                INT8;
-
-typedef void                VOID;
-
-typedef UINT64              EFI_PHYSICAL_ADDRESS;
-
-typedef struct {
-  UINT32  Data1;
-  UINT16  Data2;
-  UINT16  Data3;
-  UINT8   Data4[8];
-} EFI_GUID;
-
-#define CONST     const
-#define STATIC    static
-
-#define TRUE  ((BOOLEAN)(1==1))
-#define FALSE ((BOOLEAN)(0==1))
-
-static inline void DebugDeadLoop(void) {
-  for (;;);
-}
-
-#define FSPAPI __attribute__((cdecl))
-#define EFIAPI __attribute__((cdecl))
-
-#define _ASSERT(Expression)  DebugDeadLoop()
-#define ASSERT(Expression)      \
-  do {                          \
-    if (!(Expression)) {        \
-      _ASSERT (Expression);     \
-    }                           \
-  } while (FALSE)
-
-typedef UINT32 FSP_STATUS;
-typedef UINT32 EFI_STATUS;
-
-///
-/// Compatiable with EFI_STATUS defined in PI Spec.
-#define FSP_SUCCESS               0
-#define FSP_INVALID_PARAMETER     0x80000002
-#define FSP_UNSUPPORTED           0x80000003
-#define FSP_DEVICE_ERROR          0x80000007
-#define FSP_NOT_FOUND             0x8000000E
-#define FSP_ALREADY_STARTED       0x80000014
-
-/**
-  Returns a 16-bit signature built from 2 ASCII characters.
-
-  This macro returns a 16-bit value built from the two ASCII characters specified
-  by A and B.
-
-  @param  A    The first ASCII character.
-  @param  B    The second ASCII character.
-
-  @return A 16-bit value built from the two ASCII characters specified by A and B.
-
-**/
-#define SIGNATURE_16(A, B)        ((A) | (B << 8))
-
-/**
-  Returns a 32-bit signature built from 4 ASCII characters.
-
-  This macro returns a 32-bit value built from the four ASCII characters specified
-  by A, B, C, and D.
-
-  @param  A    The first ASCII character.
-  @param  B    The second ASCII character.
-  @param  C    The third ASCII character.
-  @param  D    The fourth ASCII character.
-
-  @return A 32-bit value built from the two ASCII characters specified by A, B,
-          C and D.
-
-**/
-#define SIGNATURE_32(A, B, C, D)  (SIGNATURE_16 (A, B) | (SIGNATURE_16 (C, D) << 16))
-
-/**
-  Returns a 64-bit signature built from 8 ASCII characters.
-
-  This macro returns a 64-bit value built from the eight ASCII characters specified
-  by A, B, C, D, E, F, G,and H.
-
-  @param  A    The first ASCII character.
-  @param  B    The second ASCII character.
-  @param  C    The third ASCII character.
-  @param  D    The fourth ASCII character.
-  @param  E    The fifth ASCII character.
-  @param  F    The sixth ASCII character.
-  @param  G    The seventh ASCII character.
-  @param  H    The eighth ASCII character.
-
-  @return A 64-bit value built from the two ASCII characters specified by A, B,
-          C, D, E, F, G and H.
-
-**/
-#define SIGNATURE_64(A, B, C, D, E, F, G, H) \
-    (SIGNATURE_32 (A, B, C, D) | ((UINT64) (SIGNATURE_32 (E, F, G, H)) << 32))
-
-#endif
diff --git a/src/vendorcode/intel/fsp1_0/rangeley/include/fspvpd.h b/src/vendorcode/intel/fsp1_0/rangeley/include/fspvpd.h
deleted file mode 100644
index 4ba1a28..0000000
--- a/src/vendorcode/intel/fsp1_0/rangeley/include/fspvpd.h
+++ /dev/null
@@ -1,89 +0,0 @@
-/** @file
-
-Copyright (C) 2015, Intel Corporation
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
-* Redistributions of source code must retain the above copyright notice, this
-  list of conditions and the following disclaimer.
-* Redistributions in binary form must reproduce the above copyright notice, this
-  list of conditions and the following disclaimer in the documentation and/or
-  other materials provided with the distribution.
-* Neither the name of Intel Corporation nor the names of its contributors may
-  be used to endorse or promote products derived from this software without
-  specific prior written permission.
-
-  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
-  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
-  THE POSSIBILITY OF SUCH DAMAGE.
-
-  This file is automatically generated. Please do NOT modify !!!
-
-**/
-
-#ifndef __FSP_VPD_H__
-#define __FSP_VPD_H__
-
-#pragma pack(1)
-
-
-
-typedef struct _UPD_DATA_REGION {
-  UINT64                      Signature;                     /* Offset 0x0000 */
-  UINT64                      Reserved;                      /* Offset 0x0008 */
-  UINT8                       UnusedUpdSpace0[16];           /* Offset 0x0010 */
-  UINT8                       PcdMrcInitTsegSize;            /* Offset 0x0020 */
-  UINT8                       PcdMemoryDown;                 /* Offset 0x0021 */
-  UINT8                       PcdMrcRmtSupport;              /* Offset 0x0022 */
-  UINT8                       PcdMrcRmtCpgcExpLoopCntValue;  /* Offset 0x0023 */
-  UINT8                       PcdMrcRmtCpgcNumBursts;        /* Offset 0x0024 */
-  UINT8                       PcdSpdBaseAddress_0_0;         /* Offset 0x0025 */
-  UINT8                       PcdSpdBaseAddress_0_1;         /* Offset 0x0026 */
-  UINT8                       PcdSpdBaseAddress_1_0;         /* Offset 0x0027 */
-  UINT8                       PcdSpdBaseAddress_1_1;         /* Offset 0x0028 */
-  UINT8                       PcdExtendedTemperatureEnable;  /* Offset 0x0029 */
-  UINT8                       UnusedUpdSpace1[6];            /* Offset 0x002A */
-  UINT8                       PcdEnableLan;                  /* Offset 0x0030 */
-  UINT8                       PcdEnableSata2;                /* Offset 0x0031 */
-  UINT8                       PcdEnableSata3;                /* Offset 0x0032 */
-  UINT8                       PcdEnableIQAT;                 /* Offset 0x0033 */
-  UINT8                       PcdEnableUsb20;                /* Offset 0x0034 */
-  UINT8                       PcdBifurcation;                /* Offset 0x0035 */
-  UINT8                       PcdPcieRootPort1DeEmphasis;    /* Offset 0x0036 */
-  UINT8                       PcdPcieRootPort2DeEmphasis;    /* Offset 0x0037 */
-  UINT8                       PcdPcieRootPort3DeEmphasis;    /* Offset 0x0038 */
-  UINT8                       PcdPcieRootPort4DeEmphasis;    /* Offset 0x0039 */
-  UINT8                       UnusedUpdSpace2[6];            /* Offset 0x003A */
-  UINT8                       PcdPrintDebugMessages;         /* Offset 0x0040 */
-  UINT8                       PcdFastboot;                   /* Offset 0x0041 */
-  UINT8                       PcdEccSupport;                 /* Offset 0x0042 */
-  UINT8                       PcdSerialPortBaudRate;         /* Offset 0x0043 */
-  UINT8                       PcdCustomerRevision[32];       /* Offset 0x0044 */
-  UINT8                       UnusedUpdSpace3[12];           /* Offset 0x0064 */
-  UINT16                      PcdRegionTerminator;           /* Offset 0x0070 */
-} UPD_DATA_REGION;
-
-#define VPD_IMAGE_ID    0x562D474E524E5641        /* 'AVNRNG-V' */
-#define VPD_IMAGE_REV   0x00000140
-
-typedef struct _VPD_DATA_REGION {
-  UINT64                      PcdVpdRegionSign;              /* Offset 0x0000 */
-  UINT32                      PcdImageRevision;              /* Offset 0x0008 */
-  UINT32                      PcdUpdRegionOffset;            /* Offset 0x000C */
-  UINT8                       UnusedVpdSpace0[16];           /* Offset 0x0010 */
-  UINT32                      PcdFspReservedMemoryLength;    /* Offset 0x0020 */
-  UINT8                       PcdSpdWriteProtect;            /* Offset 0x0024 */
-} VPD_DATA_REGION;
-
-#pragma pack()
-
-#endif



More information about the coreboot-gerrit mailing list