diff --git a/openpower/package/hostboot-p8/0001-Increase-uart-delay.patch b/openpower/package/hostboot-p8/0001-Increase-uart-delay.patch
new file mode 100644
index 0000000..5c916d2
--- /dev/null
+++ b/openpower/package/hostboot-p8/0001-Increase-uart-delay.patch
@@ -0,0 +1,27 @@
+From 0c69e87e86e62253bc5a33cadf41e3d5f80971f0 Mon Sep 17 00:00:00 2001
+From: Brian Silver <bsilver@us.ibm.com>
+Date: Wed, 5 Nov 2014 14:16:36 -0600
+Subject: [PATCH] Changes for Habanero bringup, uart delay and centaur/vddr
+
+Change-Id: I381732be6facd25fb27bbd1f8ac0d75eb5b4980e
+---
+ src/usr/console/uart.C                         |  2 +-
+ src/usr/hwpf/hwp/dram_training/palmetto_vddr.C | 18 +++++++++++++-----
+ 2 files changed, 14 insertions(+), 6 deletions(-)
+
+diff --git a/src/usr/console/uart.C b/src/usr/console/uart.C
+index 385a05c..a269168 100644
+--- a/src/usr/console/uart.C
++++ b/src/usr/console/uart.C
+@@ -116,7 +116,7 @@ namespace CONSOLE
+             // Wait for transmit FIFO to have space.
+             {
+                 const uint64_t DELAY_NS = 100;
+-                const uint64_t DELAY_LOOPS = 10000;
++                const uint64_t DELAY_LOOPS = 100000000;
+ 
+                 uint8_t data = 0;
+                 uint64_t loops = 0;
+-- 
+1.9.1
+
diff --git a/openpower/package/hostboot-p8/0002-GCC-4.9-Make-compiler-use-ELFv1-ABI.patch b/openpower/package/hostboot-p8/0002-GCC-4.9-Make-compiler-use-ELFv1-ABI.patch
new file mode 100644
index 0000000..66bc026
--- /dev/null
+++ b/openpower/package/hostboot-p8/0002-GCC-4.9-Make-compiler-use-ELFv1-ABI.patch
@@ -0,0 +1,36 @@
+From 005cac73915ee6f6b67e9b01ae840b798c1fc80e Mon Sep 17 00:00:00 2001
+From: Andrew Geissler <andrewg@us.ibm.com>
+Date: Mon, 16 Feb 2015 13:43:51 -0600
+Subject: [PATCH] GCC 4.9: Make compiler use ELFv1 ABI.
+
+GCC4.9 defaults to ELFv2 ABI support but we do not have all
+of the needed tools to suppor this.
+
+Change-Id: Iacf49c46b1fb25776ba60d6506ccadff7b46bf60
+RTC: 123430
+---
+ src/build/mkrules/cflags.env.mk |    9 ++++++---
+ 1 files changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/src/build/mkrules/cflags.env.mk b/src/build/mkrules/cflags.env.mk
+index 8ca32b1..c729341 100644
+--- a/src/build/mkrules/cflags.env.mk
++++ b/src/build/mkrules/cflags.env.mk
+@@ -36,10 +37,12 @@ CFLAGS += -D__HOSTBOOT_MODULE=$(MODULE)
+ endif
+ 
+ COMMONFLAGS += $(OPT_LEVEL) -nostdlib
++# TODO RTC: 123994 - ELFv2 ABI support (-mabi=elfv1)
+ CFLAGS += $(COMMONFLAGS) -mcpu=power7 -nostdinc -g -mno-vsx -mno-altivec\
+           -Wall -Werror -mtraceback=no -pipe \
+-	  -ffunction-sections -fdata-sections -ffreestanding -mbig-endian
+-ASMFLAGS += $(COMMONFLAGS) -mcpu=power7 -mbig-endian
++	  -ffunction-sections -fdata-sections -ffreestanding -mbig-endian \
++      -mabi=elfv1
++ASMFLAGS += $(COMMONFLAGS) -mcpu=power7 -mbig-endian -mabi=elfv1
+ CXXFLAGS += $(CFLAGS) -nostdinc++ -fno-rtti -fno-exceptions -Wall \
+ 	    -fuse-cxa-atexit
+ LDFLAGS += --nostdlib --sort-common -EB $(COMMONFLAGS)
+-- 
+1.7.4.1
+
diff --git a/openpower/package/hostboot-p8/0003-Default-to-std-gnu-03.patch b/openpower/package/hostboot-p8/0003-Default-to-std-gnu-03.patch
new file mode 100644
index 0000000..f6c6710
--- /dev/null
+++ b/openpower/package/hostboot-p8/0003-Default-to-std-gnu-03.patch
@@ -0,0 +1,32 @@
+From bc7b8b21549752274b162c64dbce3c81d20f2cab Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 25 Aug 2016 20:22:30 +1000
+Subject: [PATCH 03/10] Default to std=gnu++03
+
+Seeing as no C++ dialect was previously selected, GCC < 6 defaulted
+to GNU++98 as the standard C++ mode. However... it seems that C++03
+is a better match for HostBoot code (confirmed by Patrick Williams
+in https://github.com/open-power/hostboot/pull/62#discussion_r76830612 )
+
+Change-Id: I6661b5b61319c85c2a90926beb6e2662e96dcf06
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/build/mkrules/cflags.env.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/build/mkrules/cflags.env.mk b/src/build/mkrules/cflags.env.mk
+index c805999..0bae0ec 100644
+--- a/src/build/mkrules/cflags.env.mk
++++ b/src/build/mkrules/cflags.env.mk
+@@ -41,7 +41,7 @@ CFLAGS += $(COMMONFLAGS) -mcpu=power7 -nostdinc -g -mno-vsx -mno-altivec\
+ 	  -ffunction-sections -fdata-sections -ffreestanding -mbig-endian
+ ASMFLAGS += $(COMMONFLAGS) -mcpu=power7 -mbig-endian
+ CXXFLAGS += $(CFLAGS) -nostdinc++ -fno-rtti -fno-exceptions -Wall \
+-	    -fuse-cxa-atexit
++	    -fuse-cxa-atexit -std=gnu++03
+ LDFLAGS += --nostdlib --sort-common -EB $(COMMONFLAGS)
+ 
+ INCFLAGS = $(addprefix -I, $(INCDIR) )
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0004-fix-build-error-return-statement-with-a-value-in-fun.patch b/openpower/package/hostboot-p8/0004-fix-build-error-return-statement-with-a-value-in-fun.patch
new file mode 100644
index 0000000..b1ecacd
--- /dev/null
+++ b/openpower/package/hostboot-p8/0004-fix-build-error-return-statement-with-a-value-in-fun.patch
@@ -0,0 +1,28 @@
+From 6ae906e70c7209e69b750f6566263fe4998dfb48 Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 25 Aug 2016 19:22:00 +1000
+Subject: [PATCH 04/10] fix build error: return-statement with a value, in
+ function returning 'void'
+
+Change-Id: I9dc8b698fec95488e209cbc40b928769a26b6de6
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/include/usr/devicefw/driverif.H | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/include/usr/devicefw/driverif.H b/src/include/usr/devicefw/driverif.H
+index a148725..fb43073 100644
+--- a/src/include/usr/devicefw/driverif.H
++++ b/src/include/usr/devicefw/driverif.H
+@@ -266,7 +266,7 @@ namespace DeviceFW
+                              TargType i_targetType,
+                              deviceOp_t i_regRoute)
+     {
+-        return InvalidParameterType(); // Cause a compile fail if not one of
++        InvalidParameterType(); // Cause a compile fail if not one of
+                                        // the explicit template specializations.
+     }
+ 
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0005-error-dereferencing-type-punned-pointer-will-break-s.patch b/openpower/package/hostboot-p8/0005-error-dereferencing-type-punned-pointer-will-break-s.patch
new file mode 100644
index 0000000..fcfe570
--- /dev/null
+++ b/openpower/package/hostboot-p8/0005-error-dereferencing-type-punned-pointer-will-break-s.patch
@@ -0,0 +1,71 @@
+From 550d36dca3cdec84d47f05711c2569990d3b4708 Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 25 Aug 2016 19:27:04 +1000
+Subject: [PATCH 05/10] error: dereferencing type-punned pointer will break
+ strict-aliasing rules
+
+Change-Id: I63accd3e881c941736ece4b4498c2c9d06ff8761
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.H             | 7 +++++++
+ .../usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.H        | 1 -
+ src/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.C        | 6 +++---
+ 3 files changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.H b/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.H
+index e5af2c9..7edf2bf 100755
+--- a/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.H
++++ b/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.H
+@@ -227,6 +227,13 @@ namespace getAttrData
+         uint8_t              iv_systemType;
+         uint8_t              iv_systemType_ext;
+         uint8_t              iv_dataVersion;
++    public:
++	MBvpdVMKeyword() : iv_version(0),iv_systemType(0),
++			   iv_systemType_ext(0),iv_dataVersion(0) {};
++	operator uint32_t() const {
++		return iv_version << 24 | iv_systemType << 16 |
++			iv_systemType_ext << 8 | iv_dataVersion;
++	}
+     };
+ //  Attribute definition
+     struct MBvpdAttrDef
+diff --git a/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.H b/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.H
+index f172508..85460b2 100644
+--- a/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.H
++++ b/src/include/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.H
+@@ -33,7 +33,6 @@
+ #define _HWP_GETMBVPDMEMDATAVERSION_
+ 
+ #include <fapi.H>
+-#define VM_KEYWORD_DEFAULT_VALUE 0x00000000
+ 
+ // function pointer typedef definition for HWP call support
+ typedef fapi::ReturnCode (*getMBvpdMemoryDataVersion_FP_t)
+diff --git a/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.C b/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.C
+index 2f83fa2..ef64515 100644
+--- a/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.C
++++ b/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdMemoryDataVersion.C
+@@ -50,7 +50,7 @@ fapi::ReturnCode getMBvpdMemoryDataVersion(
+     fapi::ReturnCode l_fapirc;
+     DimmType l_dimmType = ISDIMM;
+     fapi::MBvpdRecord  l_record  = fapi::MBVPD_RECORD_SPDX;
+-    uint32_t l_vpdMemoryDataVersion = VM_KEYWORD_DEFAULT_VALUE;   
++    MBvpdVMKeyword l_vpdMemoryDataVersion;
+     uint32_t l_bufSize = sizeof(l_vpdMemoryDataVersion);
+ 
+     FAPI_DBG("getMBvpdMemoryDataVersion: entry ");
+@@ -140,8 +140,8 @@ fapi::ReturnCode getMBvpdMemoryDataVersion(
+         }
+                     
+         // Check if the format byte in the value returned is in between valid range
+-        if (( ((MBvpdVMKeyword *)(&l_vpdMemoryDataVersion))->iv_version >  VM_SUPPORTED_HIGH_VER )||
+-            ( ((MBvpdVMKeyword *)(&l_vpdMemoryDataVersion))->iv_version == VM_NOT_SUPPORTED ))
++        if ((l_vpdMemoryDataVersion.iv_version >  VM_SUPPORTED_HIGH_VER )||
++            (l_vpdMemoryDataVersion.iv_version == VM_NOT_SUPPORTED ))
+         {
+             FAPI_ERR("getMBvpdMemoryDataVersion:"
+                      " keyword data returned is invalid : %d ",
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0006-Change-cv_forcedMemPeriodic-to-uint8_t-as-bool-is-in.patch b/openpower/package/hostboot-p8/0006-Change-cv_forcedMemPeriodic-to-uint8_t-as-bool-is-in.patch
new file mode 100644
index 0000000..666c747
--- /dev/null
+++ b/openpower/package/hostboot-p8/0006-Change-cv_forcedMemPeriodic-to-uint8_t-as-bool-is-in.patch
@@ -0,0 +1,70 @@
+From 74d099aaffa37498859c0840771052f50253ce4d Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 25 Aug 2016 19:33:42 +1000
+Subject: [PATCH 06/10] Change cv_forcedMemPeriodic to uint8_t as bool is
+ invalid
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+GCC6 throws the following error:
+operand type ‘bool*’ is incompatible with argument 1 of ‘__sync_fetch_and_and’
+
+GCC documents that bool is invalid for __sync builtins over at:
+https://gcc.gnu.org/onlinedocs/gcc/_005f_005fsync-Builtins.html#g_t_005f_005fsync-Builtins
+" GCC allows any scalar type that is 1, 2, 4 or 8 bytes in size other than the C type _Bool or the C++ type bool"
+
+Change-Id: Iab6415348cb19f590921d8ccc5349867fa57a42d
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/include/kernel/cpumgr.H | 2 +-
+ src/kernel/cpumgr.C         | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/include/kernel/cpumgr.H b/src/include/kernel/cpumgr.H
+index 68f8972..6e9b697 100644
+--- a/src/include/kernel/cpumgr.H
++++ b/src/include/kernel/cpumgr.H
+@@ -215,7 +215,7 @@ class CpuManager
+              */
+         static uint64_t cv_cpuSeq;
+ 
+-        static bool cv_forcedMemPeriodic;       //!<  force free / coalesce.
++        static uint8_t cv_forcedMemPeriodic;       //!<  force free / coalesce.
+ 
+         // If a shutdown of all CPUs is requested
+         static bool cv_shutdown_requested;
+diff --git a/src/kernel/cpumgr.C b/src/kernel/cpumgr.C
+index 44f61a1..ce7516f 100644
+--- a/src/kernel/cpumgr.C
++++ b/src/kernel/cpumgr.C
+@@ -50,7 +50,7 @@ cpu_t** CpuManager::cv_cpus[KERNEL_MAX_SUPPORTED_NODES];
+ bool CpuManager::cv_shutdown_requested = false;
+ uint64_t CpuManager::cv_shutdown_status = 0;
+ size_t CpuManager::cv_cpuSeq = 0;
+-bool CpuManager::cv_forcedMemPeriodic = false;
++uint8_t CpuManager::cv_forcedMemPeriodic = 0;
+ InteractiveDebug CpuManager::cv_interactive_debug;
+ 
+ CpuManager::CpuManager() : iv_lastStartTimebase(0)
+@@ -361,7 +361,7 @@ void CpuManager::executePeriodics(cpu_t * i_cpu)
+         }
+ 
+         bool forceMemoryPeriodic = __sync_fetch_and_and(&cv_forcedMemPeriodic,
+-                                                        false);
++                                                        0);
+ 
+         ++(i_cpu->periodic_count);
+         if((0 == (i_cpu->periodic_count % CPU_PERIODIC_CHECK_MEMORY)) ||
+@@ -461,7 +461,7 @@ size_t CpuManager::getThreadCount()
+ 
+ void CpuManager::forceMemoryPeriodic()
+ {
+-    cv_forcedMemPeriodic = true;
++    cv_forcedMemPeriodic = 1;
+ }
+ 
+ 
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0007-error-the-compiler-can-assume-that-the-address-of-r-.patch b/openpower/package/hostboot-p8/0007-error-the-compiler-can-assume-that-the-address-of-r-.patch
new file mode 100644
index 0000000..9c2c8f4
--- /dev/null
+++ b/openpower/package/hostboot-p8/0007-error-the-compiler-can-assume-that-the-address-of-r-.patch
@@ -0,0 +1,34 @@
+From 8797f215a09a89c271dab484b892ceedd2486615 Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 25 Aug 2016 20:13:11 +1000
+Subject: [PATCH 07/10] =?UTF-8?q?error:=20the=20compiler=20can=20assume=20?=
+ =?UTF-8?q?that=20the=20address=20of=20=E2=80=98r=E2=80=99=20will=20never?=
+ =?UTF-8?q?=20be=20NULL?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+     PRDF_ASSERT( &r  != NULL );
+
+Change-Id: I2d60075f9e2232512efe45a5c6aa5563f3a565f5
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C b/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C
+index 9ee1358..ef7279b 100755
+--- a/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C
++++ b/src/usr/diag/prdf/common/framework/register/prdfErrorRegister.C
+@@ -120,8 +120,6 @@ ErrorRegister::ErrorRegister( SCAN_COMM_REGISTER_CLASS & r, ResolutionMap & rm,
+     ErrorRegisterType(), scr(r), scr_rc(SUCCESS), rMap(rm),
+     xNoErrorOnZeroScr(false), xScrId(scrId)
+ {
+-    PRDF_ASSERT( &r  != NULL );
+-    PRDF_ASSERT( &rm != NULL );
+ }
+ 
+ /*---------------------------------------------------------------------*/
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0008-Fix-compiler-can-assume-address-will-never-be-NULL-e.patch b/openpower/package/hostboot-p8/0008-Fix-compiler-can-assume-address-will-never-be-NULL-e.patch
new file mode 100644
index 0000000..73adecc
--- /dev/null
+++ b/openpower/package/hostboot-p8/0008-Fix-compiler-can-assume-address-will-never-be-NULL-e.patch
@@ -0,0 +1,90 @@
+From b315c53f2803b84e35fe646aa82702b82e8ecd98 Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 25 Aug 2016 20:07:58 +1000
+Subject: [PATCH 08/10] Fix compiler can assume address will never be NULL
+ error with GCC6
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+So, it turns out that relying on the address of something passed by
+reference being able to be NULL isn't exactly a good idea, or remotely
+obvious code. So, instead, do the sane thing and pass a pointer and
+check it.
+
+../../../../src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H:
+In constructor ‘PRDF::AttnTypeRegister::AttnTypeRegister(PRDF::SCAN_COMM_REGISTE
+R_CLASS&, PRDF::SCAN_COMM_REGISTER_CLASS&, PRDF::SCAN_COMM_REGISTER_CLASS&, PRDF
+::SCAN_COMM_REGISTER_CLASS&)’:
+../../../../src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H:4
+42:21: error: the compiler can assume that the address of ‘i_check’ will never b
+e NULL [-Werror=address]
+         iv_check(  NULL == &i_check   ? &cv_null : &i_check),
+                   ~~^~~~~~~~~~~
+../../../../src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H:4
+43:21: error: the compiler can assume that the address of ‘i_recov’ will never b
+e NULL [-Werror=address]
+         iv_recov(  NULL == &i_recov   ? &cv_null : &i_recov),
+                   ~~^~~~~~~~~~~
+../../../../src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H:4
+44:22: error: the compiler can assume that the address of ‘i_special’ will never
+ be NULL [-Werror=address]
+         iv_special(NULL == &i_special ? &cv_null : &i_special),
+                    ~~^~~~~~~~~~~~~
+../../../../src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H:4
+45:22: error: the compiler can assume that the address of ‘i_proccs’ will never
+be NULL [-Werror=address]
+         iv_proccs( NULL == &i_proccs  ? &cv_null : &i_proccs),
+                    ~~^~~~~~~~~~~~
+
+Change-Id: Iecd8636da67aac24f64f73fd82b1f7ccbfced900
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ .../common/framework/register/prdfOperatorRegister.H     | 16 ++++++++--------
+ .../prdf/common/framework/register/prdfScanFacility.C    |  2 +-
+ 2 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H b/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H
+index b0513e4..a26a76e 100755
+--- a/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H
++++ b/src/usr/diag/prdf/common/framework/register/prdfOperatorRegister.H
+@@ -434,15 +434,15 @@ class AttnTypeRegister : public SCAN_COMM_REGISTER_CLASS
+         iv_bs = &iv_iBS;
+     }
+ 
+-    AttnTypeRegister( SCAN_COMM_REGISTER_CLASS & i_check,
+-                      SCAN_COMM_REGISTER_CLASS & i_recov,
+-                      SCAN_COMM_REGISTER_CLASS & i_special,
+-                      SCAN_COMM_REGISTER_CLASS & i_proccs ) :
++    AttnTypeRegister( SCAN_COMM_REGISTER_CLASS *i_check,
++                      SCAN_COMM_REGISTER_CLASS *i_recov,
++                      SCAN_COMM_REGISTER_CLASS *i_special,
++                      SCAN_COMM_REGISTER_CLASS *i_proccs ) :
+         SCAN_COMM_REGISTER_CLASS( ),
+-        iv_check(  NULL == &i_check   ? &cv_null : &i_check),
+-        iv_recov(  NULL == &i_recov   ? &cv_null : &i_recov),
+-        iv_special(NULL == &i_special ? &cv_null : &i_special),
+-        iv_proccs( NULL == &i_proccs  ? &cv_null : &i_proccs),
++        iv_check(  NULL == i_check   ? &cv_null : i_check),
++        iv_recov(  NULL == i_recov   ? &cv_null : i_recov),
++        iv_special(NULL == i_special ? &cv_null : i_special),
++        iv_proccs( NULL == i_proccs  ? &cv_null : i_proccs),
+         iv_iBS(0)         // will fully initialize this inside ctor.
+     {
+         uint32_t l_length = 1024;
+diff --git a/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C b/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C
+index 0d379cf..cad5ce8 100755
+--- a/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C
++++ b/src/usr/diag/prdf/common/framework/register/prdfScanFacility.C
+@@ -166,7 +166,7 @@ SCAN_COMM_REGISTER_CLASS &  ScanFacility::GetAttnTypeRegister(
+                                            SCAN_COMM_REGISTER_CLASS * i_special,
+                                            SCAN_COMM_REGISTER_CLASS * i_proccs )
+ {
+-  AttnTypeRegister r(*i_check, *i_recov, *i_special, *i_proccs);
++  AttnTypeRegister r(i_check, i_recov, i_special, i_proccs);
+   return iv_attnRegFw.get(r);
+ }
+ 
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0009-error-in-C-98-l_vmVersionBuf-must-be-initialized-by-.patch b/openpower/package/hostboot-p8/0009-error-in-C-98-l_vmVersionBuf-must-be-initialized-by-.patch
new file mode 100644
index 0000000..7e17bf9
--- /dev/null
+++ b/openpower/package/hostboot-p8/0009-error-in-C-98-l_vmVersionBuf-must-be-initialized-by-.patch
@@ -0,0 +1,33 @@
+From 9279a2bf255392321594b9457a67b796195b0891 Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Wed, 31 Aug 2016 13:07:17 +1000
+Subject: [PATCH 09/10] =?UTF-8?q?error:=20in=20C++98=20=E2=80=98l=5FvmVers?=
+ =?UTF-8?q?ionBuf=E2=80=99=20must=20be=20initialized=20by=20constructor?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+fix GCC6 thrown error
+
+Change-Id: I9aa508843f54c99ebb59822c39590811423ad0b1
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.C | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.C b/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.C
+index 3739c75..a4685ad 100755
+--- a/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.C
++++ b/src/usr/hwpf/hwp/mvpd_accessors/getMBvpdAttr.C
+@@ -392,7 +392,7 @@ fapi::ReturnCode getVersion  (const fapi::Target    & i_mbaTarget,
+     fapi::Target l_mbTarget;
+     fapi::MBvpdKeyword l_keyword = fapi::MBVPD_KEYWORD_VM;  // try VM first
+     fapi::MBvpdRecord  l_record  = fapi::MBVPD_RECORD_SPDX; // default to SPDX
+-    MBvpdVMKeyword l_vmVersionBuf={};
++    MBvpdVMKeyword l_vmVersionBuf;
+     uint32_t l_version = 0;
+     uint32_t l_vmBufSize = sizeof(MBvpdVMKeyword); // VM keyword is of 4 bytes.
+     uint16_t l_versionBuf = 0;
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0010-Use-std-gnu-03-for-host-g-invocations.patch b/openpower/package/hostboot-p8/0010-Use-std-gnu-03-for-host-g-invocations.patch
new file mode 100644
index 0000000..a9cef3f
--- /dev/null
+++ b/openpower/package/hostboot-p8/0010-Use-std-gnu-03-for-host-g-invocations.patch
@@ -0,0 +1,69 @@
+From 9852975319c864b47759cc8d7814bf6f9f0f1f4c Mon Sep 17 00:00:00 2001
+From: Stewart Smith <stewart@linux.vnet.ibm.com>
+Date: Thu, 3 Nov 2016 14:36:19 +1100
+Subject: [PATCH 10/10] Use -std=gnu++03 for host g++ invocations
+
+Seeing as the ancient GCC on RHEL6 doesn't actually support -std=gnu++03
+we have to go through some hoops to detect it (we use the same magic
+Make as we use in skiboot to do the same)
+
+Change-Id: I338560ae2ebdac842c8055c07519d542564c3923
+Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
+---
+ src/usr/hwpf/makefile | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/src/usr/hwpf/makefile b/src/usr/hwpf/makefile
+index 8d0bb72..ee8cf13 100644
+--- a/src/usr/hwpf/makefile
++++ b/src/usr/hwpf/makefile
+@@ -5,7 +5,7 @@
+ #
+ # OpenPOWER HostBoot Project
+ #
+-# Contributors Listed Below - COPYRIGHT 2011,2015
++# Contributors Listed Below - COPYRIGHT 2011,2016
+ # [+] International Business Machines Corp.
+ #
+ #
+@@ -402,18 +402,26 @@ $(call GENTARGET, ${IF_CMP_FLEX_TARGET}) : \
+ 	$(C2) "    FLEX       $(notdir $<)"
+ 	$(C1)flex -o$@ $^
+ 
++try = $(shell set -e; if ($(1)) >/dev/null 2>&1; \
++        then echo "$(2)"; \
++        else echo "$(3)"; fi )
++
++try-cflag = $(call try,$(1) $(2) -x c -c /dev/null -o /dev/null,$(2))
++HOSTCFLAGS:=-O3
++HOSTCFLAGS+=$(call try-cflag,$(HOST_PREFIX)g++,-std=gnu++03)
++
+ $(GENDIR)/$(IF_CMP_SUBDIR)/%.host.o: \
+ 	    ifcompiler/%.C $(IF_COMPILER_H_FILES) \
+ 	    $(GENDIR)/$(IF_CMP_YACC_H_TARGET)
+ 	$(C2) "    CXX        $(notdir $<)"
+-	$(C1)$(CCACHE) $(HOST_PREFIX)g++ -O3 $< -I ifcompiler -I $(GENDIR) \
++	$(C1)$(CCACHE) $(HOST_PREFIX)g++ $(HOSTCFLAGS) $< -I ifcompiler -I $(GENDIR) \
+ 			-I $(GENDIR)/$(IF_CMP_SUBDIR) \
+ 			-I $(ROOTPATH)/src/include/usr/hwpf/hwp -c -o $@
+ 
+ $(GENDIR)/$(IF_CMP_YACC_C_TARGET:.c=.host.o): \
+     $(GENDIR)/$(IF_CMP_YACC_C_TARGET) $(IF_COMPILER_H_FILES)
+ 	$(C2) "    CXX        $(notdir $<)"
+-	$(C1)$(CCACHE) $(HOST_PREFIX)g++ -O3 $< -I ifcompiler -I $(GENDIR) \
++	$(C1)$(CCACHE) $(HOST_PREFIX)g++ $(HOSTCFLAGS) $< -I ifcompiler -I $(GENDIR) \
+ 			-I $(GENDIR)/$(IF_CMP_SUBDIR) \
+ 			-I $(ROOTPATH)/src/include/usr/hwpf/hwp -c -o $@
+ 
+@@ -421,7 +429,7 @@ $(GENDIR)/$(IF_CMP_FLEX_TARGET:.c=.host.o): \
+     $(GENDIR)/$(IF_CMP_FLEX_TARGET) $(IF_COMPILER_H_FILES) \
+     $(GENDIR)/$(IF_CMP_YACC_H_TARGET)
+ 	$(C2) "    CXX        $(notdir $<)"
+-	$(C1)$(CCACHE) $(HOST_PREFIX)g++ -O3 -DHOSTBOOT_COMPILE $< -I ifcompiler -I $(GENDIR) \
++	$(C1)$(CCACHE) $(HOST_PREFIX)g++ $(HOSTCFLAGS) -DHOSTBOOT_COMPILE $< -I ifcompiler -I $(GENDIR) \
+ 			-I $(GENDIR)/$(IF_CMP_SUBDIR) \
+ 			-I $(ROOTPATH)/src/include/usr/hwpf/hwp -c -o $@
+ 
+-- 
+2.7.4
+
diff --git a/openpower/package/hostboot-p8/0012-kernel-Update-assembly-for-modern-binutils.patch b/openpower/package/hostboot-p8/0012-kernel-Update-assembly-for-modern-binutils.patch
new file mode 100644
index 0000000..2c51fd3
--- /dev/null
+++ b/openpower/package/hostboot-p8/0012-kernel-Update-assembly-for-modern-binutils.patch
@@ -0,0 +1,72 @@
+From 63c3b788eebfa28f0b4032c209e90cc2df7b2c98 Mon Sep 17 00:00:00 2001
+From: Joel Stanley <joel.stanley@au1.ibm.com>
+Date: Tue, 27 Jun 2017 18:00:09 +0930
+Subject: [PATCH] kernel: Update assembly for modern binutils
+
+From Linux 80f23935cadb ("powerpc: Convert cmp to cmpd in idle enter sequence"):
+
+  PowerPC's "cmp" instruction has four operands. Normally people write
+  "cmpw" or "cmpd" for the second cmp operand 0 or 1. But, frequently
+  people forget, and write "cmp" with just three operands.
+
+  With older binutils this is silently accepted as if this was "cmpw",
+  while often "cmpd" is wanted. With newer binutils GAS will complain
+  about this for 64-bit code. For 32-bit code it still silently assumes
+  "cmpw" is what is meant.
+
+The first two instances are dealing with SPRs, which are 32-bit, so cmpw is correct.
+
+It is not clear what to do in the third use of cmp, but given old toolchains
+have generated cmpw lets assume that we should maintain the behaviour.
+
+Change-Id: Iee5dd5903dcd7ac4028bab0176e08ce3db23b2d5
+Signed-off-by: Joel Stanley <joel.stanley@au1.ibm.com>
+---
+ src/kernel/shutdown.S | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/src/kernel/shutdown.S b/src/kernel/shutdown.S
+index 629645b26c81..cad5c66b8137 100644
+--- a/src/kernel/shutdown.S
++++ b/src/kernel/shutdown.S
+@@ -5,7 +5,9 @@
+ #
+ # OpenPOWER HostBoot Project
+ #
+-# COPYRIGHT International Business Machines Corp. 2012,2014
++# Contributors Listed Below - COPYRIGHT 2012,2017
++# [+] International Business Machines Corp.
++#
+ #
+ # Licensed under the Apache License, Version 2.0 (the "License");
+ # you may not use this file except in compliance with the License.
+@@ -92,7 +94,7 @@ kernel_shutdown_ea0_1_mode:
+         ;// as it was the one that updated the cpu_count & lowest_pir
+         ;// barrier - 1 wait for all nodes to report
+     mfspr  r10, PIR
+-    cmp    cr0, r10, r7
++    cmpw    cr0, r10, r7
+     bne+ 2f       ;// inside KERNEL_BARRIER below
+ 
+         ;// Perform barrier - 1
+@@ -131,7 +133,7 @@ kernel_shutdown_ea0_1_mode:
+     addi r8, r8, 8
+             ;// Check for PIR == r7.
+     mfspr r10, PIR
+-    cmp cr0, r10, r7
++    cmpw cr0, r10, r7
+     beq 3f
+         ;// Increment thread count.
+ 1:
+@@ -164,7 +166,7 @@ kernel_shutdown_ea0_1_mode:
+ 1:
+     or 1,1,1
+     ld r11, 0(r8)
+-    cmp cr0, r3, r11
++    cmpw cr0, r3, r11
+     bne+ 1b
+     isync
+         ;// All other threads have left, so wait a little bit...
+-- 
+2.13.1
+
diff --git a/openpower/package/hostboot-p8/Config.in b/openpower/package/hostboot-p8/Config.in
new file mode 100644
index 0000000..4dacfab
--- /dev/null
+++ b/openpower/package/hostboot-p8/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_HOSTBOOT_P8
+        bool "hostboot-p8"
+        default y if (BR2_OPENPOWER_POWER8)
+        select BR2_CPP
+        help
+            Project to build the hostboot firmware codebase
+
+if BR2_PACKAGE_HOSTBOOT_P8
+
+config BR2_HOSTBOOT_P8_CONFIG_FILE
+        string "Hostboot configuration file for compilation"
+        default default
+        help
+            String used to define hw specific make config file
+
+endif
+
diff --git a/openpower/package/hostboot-p8/hostboot-p8.mk b/openpower/package/hostboot-p8/hostboot-p8.mk
new file mode 100644
index 0000000..c50679e
--- /dev/null
+++ b/openpower/package/hostboot-p8/hostboot-p8.mk
@@ -0,0 +1,32 @@
+################################################################################
+#
+# hostboot for POWER8
+#
+################################################################################
+HOSTBOOT_P8_VERSION ?= d3025f5d7ddd0723946bb54fcb471d2bf1fd2da4
+
+HOSTBOOT_P8_SITE ?= $(call github,open-power,hostboot,$(HOSTBOOT_P8_VERSION))
+
+HOSTBOOT_P8_LICENSE = Apache-2.0
+HOSTBOOT_P8_LICENSE_FILES = LICENSE
+HOSTBOOT_P8_DEPENDENCIES = host-binutils
+
+HOSTBOOT_P8_INSTALL_IMAGES = YES
+HOSTBOOT_P8_INSTALL_TARGET = NO
+
+HOSTBOOT_P8_ENV_VARS=$(TARGET_MAKE_ENV) \
+    CONFIG_FILE=$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/hostboot/$(BR2_HOSTBOOT_P8_CONFIG_FILE) \
+    OPENPOWER_BUILD=1 CROSS_PREFIX=$(TARGET_CROSS) HOST_PREFIX="" HOST_BINUTILS_DIR=$(HOST_BINUTILS_DIR) \
+    HOSTBOOT_P8_VERSION=`cat $(HOSTBOOT_P8_VERSION_FILE)` 
+
+HOSTBOOT_P8_POST_PATCH_HOOKS += HOSTBOOT_P8_APPLY_PATCHES
+
+define HOSTBOOT_P8_BUILD_CMDS
+        $(HOSTBOOT_P8_ENV_VARS) bash -c 'cd $(@D) && source ./env.bash && $(MAKE)'
+endef
+
+define HOSTBOOT_P8_INSTALL_IMAGES_CMDS
+        cd $(@D) && source ./env.bash && $(@D)/src/build/tools/hbDistribute --openpower $(STAGING_DIR)/hostboot_build_images/
+endef
+
+$(eval $(generic-package))
