diff --git a/buildroot b/buildroot
index 9ac423f..80a2f83 160000
--- a/buildroot
+++ b/buildroot
@@ -1 +1 @@
-Subproject commit 9ac423f6f0d99b33e7bb7ad703cf83e80716da8a
+Subproject commit 80a2f83e60f3fd21a38e2bc9aac149f2c3a9ffdd
diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig
index d72cb81..cd32a2c 100644
--- a/openpower/configs/firestone_defconfig
+++ b/openpower/configs/firestone_defconfig
@@ -8,6 +8,7 @@
 
 BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc"
 BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc"
+BR2_HOSTBOOT_BINARY_WINK_FILENAME="p8.ref_image.hdr.bin.ecc"
 
 BR2_OCC_BIN_FILENAME="occ.bin"
 
@@ -37,7 +38,7 @@
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1444a4e78a9ce324b0b6ac243ccfbfc8fce25d7e"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="d0ff068a9962ba96d4e6ddfba2a4e9fd8bc9a763"
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
 BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig
index 64b827a..edcad58 100644
--- a/openpower/configs/habanero_defconfig
+++ b/openpower/configs/habanero_defconfig
@@ -8,6 +8,7 @@
 
 BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc"
 BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc"
+BR2_HOSTBOOT_BINARY_WINK_FILENAME="p8.ref_image.hdr.bin.ecc"
 
 BR2_OCC_BIN_FILENAME="occ.bin"
 
@@ -37,7 +38,7 @@
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1444a4e78a9ce324b0b6ac243ccfbfc8fce25d7e"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="d0ff068a9962ba96d4e6ddfba2a4e9fd8bc9a763"
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
 BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
diff --git a/openpower/configs/hostboot/firestone.config b/openpower/configs/hostboot/firestone.config
index 4b96cd9..f5c2d32 100755
--- a/openpower/configs/hostboot/firestone.config
+++ b/openpower/configs/hostboot/firestone.config
@@ -18,6 +18,10 @@
 set CVPD_WRITE_TO_HW
 set CVPD_READ_FROM_PNOR
 set CVPD_WRITE_TO_PNOR
+set PVPD_READ_FROM_HW
+set PVPD_WRITE_TO_HW
+set PVPD_READ_FROM_PNOR
+set PVPD_WRITE_TO_PNOR
 set SKIP_RESTRICT_EX_UNITS
 unset CDIMM_FORMAT_FOR_CVPD
 
@@ -32,7 +36,7 @@
 
 # turn on console output
 set CONSOLE
-set CONSOLE_AST2400
+set BMC_AST2400
 
 # Enable Kingston dimm voltage workaround
 set KINGSTON_1_35_VOLT
diff --git a/openpower/configs/hostboot/habanero.config b/openpower/configs/hostboot/habanero.config
index 90e5735..10eea96 100755
--- a/openpower/configs/hostboot/habanero.config
+++ b/openpower/configs/hostboot/habanero.config
@@ -18,6 +18,10 @@
 set CVPD_WRITE_TO_HW
 set CVPD_READ_FROM_PNOR
 set CVPD_WRITE_TO_PNOR
+set PVPD_READ_FROM_HW
+set PVPD_WRITE_TO_HW
+set PVPD_READ_FROM_PNOR
+set PVPD_WRITE_TO_PNOR
 set SKIP_RESTRICT_EX_UNITS
 unset CDIMM_FORMAT_FOR_CVPD
 
@@ -34,7 +38,7 @@
 
 # turn on console output
 set CONSOLE
-set CONSOLE_AST2400
+set BMC_AST2400
 
 # Enable Kingston dimm voltage workaround
 set KINGSTON_1_35_VOLT
diff --git a/openpower/configs/hostboot/palmetto.config b/openpower/configs/hostboot/palmetto.config
index 12ebc2c..00b211d 100755
--- a/openpower/configs/hostboot/palmetto.config
+++ b/openpower/configs/hostboot/palmetto.config
@@ -18,6 +18,10 @@
 set CVPD_WRITE_TO_HW
 set CVPD_READ_FROM_PNOR
 set CVPD_WRITE_TO_PNOR
+set PVPD_READ_FROM_HW
+set PVPD_WRITE_TO_HW
+set PVPD_READ_FROM_PNOR
+set PVPD_WRITE_TO_PNOR
 set SKIP_RESTRICT_EX_UNITS
 unset CDIMM_FORMAT_FOR_CVPD
 
@@ -34,7 +38,7 @@
 
 # turn on console output
 set CONSOLE
-set CONSOLE_AST2400
+set BMC_AST2400
 
 set PNOR_IS_32MB
 
diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig
index 5a4bf38..b589463 100644
--- a/openpower/configs/palmetto_defconfig
+++ b/openpower/configs/palmetto_defconfig
@@ -8,6 +8,7 @@
 
 BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc"
 BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc"
+BR2_HOSTBOOT_BINARY_WINK_FILENAME="p8.ref_image.hdr.bin.ecc"
 
 BR2_OCC_BIN_FILENAME="occ.bin"
 
@@ -36,7 +37,7 @@
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1444a4e78a9ce324b0b6ac243ccfbfc8fce25d7e"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="d0ff068a9962ba96d4e6ddfba2a4e9fd8bc9a763"
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
 BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
diff --git a/openpower/package/hostboot-binaries/hostboot_binaries.mk b/openpower/package/hostboot-binaries/hostboot_binaries.mk
index 03523c3..d9a23df 100644
--- a/openpower/package/hostboot-binaries/hostboot_binaries.mk
+++ b/openpower/package/hostboot-binaries/hostboot_binaries.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-HOSTBOOT_BINARIES_VERSION ?= d41753f2b5e2510d6bc6ce58adf8e55207b8d317
+HOSTBOOT_BINARIES_VERSION ?= 22470e51b6342f9c307e28b3ea7cdb194ff954d4
 HOSTBOOT_BINARIES_SITE ?= $(call github,open-power,hostboot-binaries,$(HOSTBOOT_BINARIES_VERSION))
 HOSTBOOT_BINARIES_LICENSE = Apache-2.0
 
@@ -13,7 +13,7 @@
 
 define HOSTBOOT_BINARIES_INSTALL_IMAGES_CMDS
      $(INSTALL) -D $(@D)/cvpd.bin  $(STAGING_DIR)/hostboot_binaries/cvpd.bin
-     $(INSTALL) -D $(@D)/p8.ref_image.hdr.bin.ecc  $(STAGING_DIR)/hostboot_binaries/p8.ref_image.hdr.bin.ecc
+     $(INSTALL) -D $(@D)/$(BR2_HOSTBOOT_BINARY_WINK_FILENAME) $(STAGING_DIR)/hostboot_binaries/
      $(INSTALL) -D $(@D)/$(BR2_HOSTBOOT_BINARY_SBEC_FILENAME) $(STAGING_DIR)/hostboot_binaries/
      $(INSTALL) -D $(@D)/$(BR2_HOSTBOOT_BINARY_SBE_FILENAME)  $(STAGING_DIR)/hostboot_binaries/
 endef
diff --git a/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch b/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch
index 74cb584..5c916d2 100644
--- a/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch
+++ b/openpower/package/hostboot/hostboot-0001-Increase-uart-delay.patch
@@ -18,7 +18,7 @@
              {
                  const uint64_t DELAY_NS = 100;
 -                const uint64_t DELAY_LOOPS = 10000;
-+                const uint64_t DELAY_LOOPS = 1000000;
++                const uint64_t DELAY_LOOPS = 100000000;
  
                  uint8_t data = 0;
                  uint64_t loops = 0;
diff --git a/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.patch b/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.patch
new file mode 100644
index 0000000..3777b11
--- /dev/null
+++ b/openpower/package/hostboot/hostboot-0008-Fix-PCIe-swap-issue.patch
@@ -0,0 +1,63 @@
+From a4f739abb72b8ac5748138183b274cca5eef50ff Mon Sep 17 00:00:00 2001
+From: Matt Ploetz <maploetz@us.ibm.com>
+Date: Tue, 12 May 2015 15:32:20 -0500
+Subject: [PATCH] PCIe lane swap fix in processMRW.pl
+
+Change-Id: Iee7127fef7f4a911a77e0c24c896d840b1b45ff4
+---
+ src/usr/targeting/common/processMrw.pl | 25 +++++++++++--------------
+ 1 file changed, 11 insertions(+), 14 deletions(-)
+
+diff --git a/src/usr/targeting/common/processMrw.pl b/src/usr/targeting/common/processMrw.pl
+index 5d44e74..bbdb936 100644
+--- a/src/usr/targeting/common/processMrw.pl
++++ b/src/usr/targeting/common/processMrw.pl
+@@ -805,8 +805,8 @@ sub processPcie
+     $iop_swap{0}{1}{'11'}=$t[7];
+ 
+     $iop_swap{1}{0}{'00'}=$t[8];
+-    $iop_swap{1}{0}{'01'}=$t[9];
+-    $iop_swap{1}{0}{'10'}=$t[10];
++    $iop_swap{1}{0}{'10'}=$t[9];
++    $iop_swap{1}{0}{'01'}=$t[10];
+     $iop_swap{1}{0}{'11'}=$t[11];
+     $iop_swap{1}{1}{'00'}=$t[12];
+     $iop_swap{1}{1}{'10'}=$t[13];
+@@ -906,25 +906,22 @@ sub processPcie
+           die "PCIE config for $iop,$iop_lane_swap[$iop],$lane_rev not found\n";
+         }
+     }
+-    my $lane_swap_attr0 = sprintf("%s,%s",$iop_lane_swap[0],
+-                          $iop_lane_swap[1]);
+-    my $lane_swap_attr1 = sprintf("%s,0,%s,0",$iop_lane_swap[0],
+-                          $iop_lane_swap[1]);
++
++    my $lane_rev_attr0 = sprintf("%s,%s",
++                         oct($iop_swap_lu[0]),oct($iop_swap_lu[1]));
++    my $lane_rev_attr1 = sprintf("%s,0,%s,0",
++                         oct($iop_swap_lu[0]),oct($iop_swap_lu[1]));
+ 
+     $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_SWAP",
+-        $lane_swap_attr0);
++        $lane_rev_attr0);
+     $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_SWAP_NON_BIFURCATED",
+-        $lane_swap_attr1);
++        $lane_rev_attr1);
+     $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_SWAP_BIFURCATED",
+         "0,0,0,0");
+-
+-    my $lane_rev_attr = sprintf("%s,0,%s,0",
+-                         oct($iop_swap_lu[0]),oct($iop_swap_lu[1]));
+-
+     $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_REVERSAL",
+-        $lane_rev_attr);
++        "0,0,0,0");
+     $targetObj->setAttribute($parentTarget,
+-        "PROC_PCIE_IOP_REVERSAL_NON_BIFURCATED",$lane_rev_attr);
++        "PROC_PCIE_IOP_REVERSAL_NON_BIFURCATED","0,0,0,0");
+     $targetObj->setAttribute($parentTarget, "PROC_PCIE_IOP_REVERSAL_BIFURCATED",
+         "0,0,0,0");
+ 
+-- 
+1.8.2.2
+
diff --git a/openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch b/openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch
new file mode 100644
index 0000000..eb8d12a
--- /dev/null
+++ b/openpower/package/hostboot/hostboot-0009-ATTN-IPOLL-interrupt-workaround.patch
@@ -0,0 +1,141 @@
+From d2bdfed735f6c5e69b606f0251aba131fec4275d Mon Sep 17 00:00:00 2001
+From: Brian Stegmiller <bjs@us.ibm.com>
+Date: Thu, 14 May 2015 13:47:36 -0500
+Subject: [PATCH] ATTN: IPOLL interrupt workaround
+
+Circumvents issue where interrupts happen before OPAL is ready
+to handle them
+
+Change-Id: I3d378cd03dac51aaa5b2f77e8940eb63f170016b
+Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/17795
+Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
+Tested-by: Jenkins Server
+---
+ src/usr/diag/attn/common/attnsvc_common.C | 83 +++++++++++++++++++++++++++++--
+ 1 file changed, 79 insertions(+), 4 deletions(-)
+
+diff --git a/src/usr/diag/attn/common/attnsvc_common.C b/src/usr/diag/attn/common/attnsvc_common.C
+index c56b8a8..5067438 100644
+--- a/src/usr/diag/attn/common/attnsvc_common.C
++++ b/src/usr/diag/attn/common/attnsvc_common.C
+@@ -43,6 +43,13 @@ using namespace ERRORLOG;
+ 
+ namespace ATTN
+ {
++const uint64_t MCIFIRACT0     = 0x02011846;
++const uint64_t MCIFIRACT1     = 0x02011847;
++
++const uint64_t MCIFIRMASK     = 0x02011843;
++const uint64_t MCIFIRMASK_AND = 0x02011844;
++const uint64_t MCIFIRMASK_OR  = 0x02011845;
++
+ 
+ void getPbGp2Mask(uint64_t i_pos, void * i_data)
+ {
+@@ -104,11 +111,11 @@ errlHndl_t ServiceCommon::configureInterrupts(
+         ConfigureMode i_mode)
+ {
+     errlHndl_t err = NULL;
+-
+-    TargetHandleList procs;
++    TargetHandleList  procs;
+     getTargetService().getAllChips(procs, TYPE_PROC);
+     TargetHandleList::iterator it = procs.begin();
+ 
++
+     while(it != procs.end())
+     {
+         uint64_t mask = 0;
+@@ -172,12 +179,10 @@ errlHndl_t ServiceCommon::configureInterrupts(
+ 
+         #ifndef __HOSTBOOT_RUNTIME
+         // enable attentions in ipoll mask
+-
+         mask = HostMask::nonHost();
+         mask |= HostMask::host();
+ 
+         // this doesn't have an and/or reg for some reason...
+-
+         err = modifyScom(*it,
+                          IPOLL::address,
+                          i_mode == UP ? ~mask : mask,
+@@ -187,6 +192,76 @@ errlHndl_t ServiceCommon::configureInterrupts(
+         {
+             break;
+         }
++
++        #else  // HOSTBOOT_RUNTIME
++
++        if (i_mode == UP)
++        {
++            HwasState         l_functional;
++            uint64_t          l_mciAct0 = 0;
++            uint64_t          l_mciAct1 = 0;
++            uint64_t          l_mciBitMask = 0;
++            TargetHandleList  l_mcsList;
++            // Get list of MCS units associated with this proc
++            getTargetService().getMcsList( *it, l_mcsList );
++
++            // We need to set/clear mask bits in the MCIFIRs that
++            // are associated with host attentions.  This should
++            // cause interrupts to re-occur if they had happened
++            // prior to starting the opal-prd application.
++            TargetHandleList::iterator  l_mcsIt = l_mcsList.begin();
++
++            while(l_mcsIt != l_mcsList.end())
++            {
++                // Make sure functional prior to using
++                if (!((*l_mcsIt)->tryGetAttr<ATTR_HWAS_STATE>(l_functional)))
++                {
++                    // Can't tell if functional so skip this MCS
++                    break;
++                }
++
++                if ( !(l_functional.functional) )
++                {
++                    // Not functional MCS so skip it
++                    break;
++                }
++
++                // Read ACTION registers to see if HOST ATTN
++                err = getScom(*l_mcsIt, MCIFIRACT0, l_mciAct0);
++
++                if (NULL == err)
++                {
++                    err = getScom(*l_mcsIt, MCIFIRACT1, l_mciAct1);
++                }
++
++                if (NULL == err)
++                {
++                    // Create bit mask we will use to write to MCIFIR
++                    // (ACT0=1, ACT1=0) indicate bits we want
++                    l_mciBitMask = l_mciAct0 & ~l_mciAct1;
++                    // Set mask bits
++                    err = putScom(*l_mcsIt, MCIFIRMASK_OR, l_mciBitMask);
++                }
++
++                if (NULL == err)
++                {
++                    // Clear mask bits
++                    err = putScom(*l_mcsIt, MCIFIRMASK_AND, ~l_mciBitMask);
++                }
++
++                // Commit any failure we had and move to next MCS unit
++                if (NULL != err)
++                {
++                    errlCommit(err, ATTN_COMP_ID);
++                }
++
++                l_mcsIt++;
++
++            } // end while on MCS units
++
++            l_mcsList.clear();
++        } // end if UP MODE -- enabling
++
+         #endif //__HOSTBOOT_RUNTIME
+ 
+         ++it;
+-- 
+1.8.2.2
+
diff --git a/openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch b/openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch
new file mode 100644
index 0000000..ef2a896
--- /dev/null
+++ b/openpower/package/hostboot/hostboot-0010-Remove-gard-actions-for-memory-plugging-errors.patch
@@ -0,0 +1,764 @@
+From c53b40e0dcc250d75a159389e099dd40b64e5468 Mon Sep 17 00:00:00 2001
+From: Dan Crowell <dcrowell@us.ibm.com>
+Date: Wed, 27 May 2015 16:39:23 -0500
+Subject: [PATCH] Remove gard actions for memory plugging errors
+
+Modified errors related to unsupported or invalid dimm
+configurations to no longer gard any hardware.
+
+Change-Id: I67459425e973ad1c6f4cf95ccd164b73bdd46a80
+---
+ .../mss_eff_config/memory_mss_eff_config.xml       | 208 +++++----------------
+ .../memory_mss_eff_config_termination.xml          |  69 +------
+ 2 files changed, 50 insertions(+), 227 deletions(-)
+
+diff --git a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml
+index ed1de55..c6a2d37 100644
+--- a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml
++++ b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config.xml
+@@ -5,7 +5,7 @@
+ <!--                                                                        -->
+ <!-- OpenPOWER HostBoot Project                                             -->
+ <!--                                                                        -->
+-<!-- Contributors Listed Below - COPYRIGHT 2013,2014                        -->
++<!-- Contributors Listed Below - COPYRIGHT 2013,2015                        -->
+ <!-- [+] International Business Machines Corp.                              -->
+ <!--                                                                        -->
+ <!--                                                                        -->
+@@ -22,7 +22,7 @@
+ <!-- permissions and limitations under the License.                         -->
+ <!--                                                                        -->
+ <!-- IBM_PROLOG_END_TAG                                                     -->
+-<!-- $Id: memory_mss_eff_config.xml,v 1.3 2014/10/20 22:12:59 asaetow Exp $ -->
++<!-- $Id: memory_mss_eff_config.xml,v 1.4 2015-05-27 19:56:31 asaetow Exp $ -->
+ <!-- For file ../../ipl/fapi/mss_eff_config.C -->
+ <!-- // *! OWNER NAME  : Anuwat Saetow     Email: asaetow@us.ibm.com -->
+ <!-- // *! BACKUP NAME : Mark Bellows      Email: bellows@us.ibm.com -->
+@@ -47,9 +47,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -71,9 +68,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -98,9 +92,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -125,9 +116,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -169,10 +157,10 @@
+     <description>Plug rule violation, one position is empty but other are present
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_0</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_1</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_0</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_1</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_0</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_1</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_0</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_1</ffdc>
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+         <priority>HIGH</priority>
+@@ -186,10 +174,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -198,10 +182,10 @@
+     <description>Plug rule violation, sides do not match
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_0</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_1</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_0</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_1</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_0</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_1</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_0</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -216,10 +200,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ 
+@@ -229,10 +209,10 @@
+     <description>Plug rule violation,  top and bottom do not match
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_0</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_1</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_0</ffdc>
+-    <ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_1</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_0</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_0_1</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_0</ffdc>
++	<ffdc>CUR_DIMM_SPD_VALID_U8ARRAY_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -247,10 +227,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -259,10 +235,10 @@
+     <description>Incompatable DRAM generation 
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>DRAM_DEVICE_TYPE_0_0</ffdc>
+-    <ffdc>DRAM_DEVICE_TYPE_0_1</ffdc>
+-    <ffdc>DRAM_DEVICE_TYPE_1_0</ffdc>
+-    <ffdc>DRAM_DEVICE_TYPE_1_1</ffdc>
++	<ffdc>DRAM_DEVICE_TYPE_0_0</ffdc>
++	<ffdc>DRAM_DEVICE_TYPE_0_1</ffdc>
++	<ffdc>DRAM_DEVICE_TYPE_1_0</ffdc>
++	<ffdc>DRAM_DEVICE_TYPE_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -277,10 +253,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -289,10 +261,10 @@
+     <description>Incompatable DIMM type
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>MODULE_TYPE_0_0</ffdc>
+-    <ffdc>MODULE_TYPE_0_1</ffdc>
+-    <ffdc>MODULE_TYPE_1_0</ffdc>
+-    <ffdc>MODULE_TYPE_1_1</ffdc>
++	<ffdc>MODULE_TYPE_0_0</ffdc>
++	<ffdc>MODULE_TYPE_0_1</ffdc>
++	<ffdc>MODULE_TYPE_1_0</ffdc>
++	<ffdc>MODULE_TYPE_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -307,10 +279,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -319,10 +287,10 @@
+     <description>Incompatable DIMM ranks
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>NUM_RANKS_0_0</ffdc>
+-    <ffdc>NUM_RANKS_0_1</ffdc>
+-    <ffdc>NUM_RANKS_1_0</ffdc>
+-    <ffdc>NUM_RANKS_1_1</ffdc>
++	<ffdc>NUM_RANKS_0_0</ffdc>
++	<ffdc>NUM_RANKS_0_1</ffdc>
++	<ffdc>NUM_RANKS_1_0</ffdc>
++	<ffdc>NUM_RANKS_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -337,10 +305,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -349,10 +313,10 @@
+     <description>Incompatable DIMM banks
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>SDRAM_BANKS_0_0</ffdc>
+-    <ffdc>SDRAM_BANKS_0_1</ffdc>
+-    <ffdc>SDRAM_BANKS_1_0</ffdc>
+-    <ffdc>SDRAM_BANKS_1_1</ffdc>
++	<ffdc>SDRAM_BANKS_0_0</ffdc>
++	<ffdc>SDRAM_BANKS_0_1</ffdc>
++	<ffdc>SDRAM_BANKS_1_0</ffdc>
++	<ffdc>SDRAM_BANKS_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -367,10 +331,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -379,10 +339,10 @@
+     <description>Incompatable DIMM rows
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>SDRAM_ROWS_0_0</ffdc>
+-    <ffdc>SDRAM_ROWS_0_1</ffdc>
+-    <ffdc>SDRAM_ROWS_1_0</ffdc>
+-    <ffdc>SDRAM_ROWS_1_1</ffdc>
++	<ffdc>SDRAM_ROWS_0_0</ffdc>
++	<ffdc>SDRAM_ROWS_0_1</ffdc>
++	<ffdc>SDRAM_ROWS_1_0</ffdc>
++	<ffdc>SDRAM_ROWS_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -397,10 +357,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -409,10 +365,10 @@
+     <description>Incompatable DIMM columns
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>SDRAM_COLS_0_0</ffdc>
+-    <ffdc>SDRAM_COLS_0_1</ffdc>
+-    <ffdc>SDRAM_COLS_1_0</ffdc>
+-    <ffdc>SDRAM_COLS_1_1</ffdc>
++	<ffdc>SDRAM_COLS_0_0</ffdc>
++	<ffdc>SDRAM_COLS_0_1</ffdc>
++	<ffdc>SDRAM_COLS_1_0</ffdc>
++	<ffdc>SDRAM_COLS_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -427,10 +383,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -439,10 +391,10 @@
+     <description>Incompatable DRAM primary bus width
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>BUS_WIDTH_0_0</ffdc>
+-    <ffdc>BUS_WIDTH_0_1</ffdc>
+-    <ffdc>BUS_WIDTH_1_0</ffdc>
+-    <ffdc>BUS_WIDTH_1_1</ffdc>
++	<ffdc>BUS_WIDTH_0_0</ffdc>
++	<ffdc>BUS_WIDTH_0_1</ffdc>
++	<ffdc>BUS_WIDTH_1_0</ffdc>
++	<ffdc>BUS_WIDTH_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -457,10 +409,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ 
+@@ -483,10 +431,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ 
+@@ -496,10 +440,10 @@
+     <description>Incompatable DRAM width
+         </description>
+     <FFDC>TARGET_MBA</FFDC>
+-    <ffdc>DRAM_WIDTH_0_0</ffdc>
+-    <ffdc>DRAM_WIDTH_0_1</ffdc>
+-    <ffdc>DRAM_WIDTH_1_0</ffdc>
+-    <ffdc>DRAM_WIDTH_1_1</ffdc>
++	<ffdc>DRAM_WIDTH_0_0</ffdc>
++	<ffdc>DRAM_WIDTH_0_1</ffdc>
++	<ffdc>DRAM_WIDTH_1_0</ffdc>
++	<ffdc>DRAM_WIDTH_1_1</ffdc>
+ 
+     <callout>
+         <procedure>MEMORY_PLUGGING_ERROR</procedure>
+@@ -514,10 +458,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -540,10 +480,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -566,10 +502,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -591,10 +523,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -616,10 +544,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -641,10 +565,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -666,10 +586,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -691,10 +607,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -716,10 +628,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -741,10 +649,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -766,10 +670,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -791,10 +691,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -816,10 +712,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -841,10 +733,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -866,10 +754,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-        <priority>HIGH</priority>
+-    </gard>
+ </hwpError>
+ 
+ 
+diff --git a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml
+index 9f3c89c..f04b0a6 100644
+--- a/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml
++++ b/src/usr/hwpf/hwp/mc_config/mss_eff_config/memory_mss_eff_config_termination.xml
+@@ -5,7 +5,9 @@
+ <!--                                                                        -->
+ <!-- OpenPOWER HostBoot Project                                             -->
+ <!--                                                                        -->
+-<!-- COPYRIGHT International Business Machines Corp. 2013,2014              -->
++<!-- Contributors Listed Below - COPYRIGHT 2013,2015                        -->
++<!-- [+] 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.       -->
+@@ -20,7 +22,7 @@
+ <!-- permissions and limitations under the License.                         -->
+ <!--                                                                        -->
+ <!-- IBM_PROLOG_END_TAG                                                     -->
+-<!-- $Id: memory_mss_eff_config_termination.xml,v 1.2 2014/04/07 23:02:10 lapietra Exp $ -->
++<!-- $Id: memory_mss_eff_config_termination.xml,v 1.3 2015-05-27 20:02:29 asaetow Exp $ -->
+ <!-- For file ../../ipl/fapi/mss_eff_config_termination.C -->
+ <!-- // *! OWNER NAME  : Dave Cadigan      Email: dcadiga@us.ibm.com -->
+ <!-- // *! BACKUP NAME : Anuwat Saetow     Email: asaetow@us.ibm.com -->
+@@ -195,9 +197,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -220,9 +219,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ <!-- *********************************************************************** -->
+   <hwpError>
+@@ -245,9 +241,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -271,9 +264,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -297,9 +287,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -323,9 +310,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -349,9 +333,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -374,9 +355,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -400,9 +378,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -425,9 +400,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -450,9 +422,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -476,9 +445,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -497,9 +463,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -523,9 +486,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ <!-- *********************************************************************** -->
+   <hwpError>
+@@ -650,9 +610,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -675,9 +632,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -699,9 +653,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ 
+@@ -724,9 +675,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -750,9 +698,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -820,9 +765,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ <!-- *********************************************************************** -->
+@@ -845,9 +787,6 @@
+         <target>TARGET_MBA</target>
+     </deconfigure>
+ 
+-    <gard>
+-        <target>TARGET_MBA</target>
+-    </gard>
+ </hwpError>
+ 
+ </hwpErrors>
+-- 
+2.3.0
+
diff --git a/openpower/package/hostboot/hostboot.mk b/openpower/package/hostboot/hostboot.mk
index 83aae71..3b7bc6f 100644
--- a/openpower/package/hostboot/hostboot.mk
+++ b/openpower/package/hostboot/hostboot.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-HOSTBOOT_VERSION ?= 70b5e31d74487d51e69a0e0a390adea6b4f32dc5
+HOSTBOOT_VERSION ?= c646754e720b5cd21534425ca90bb414a4a3ff12
 HOSTBOOT_SITE ?= $(call github,open-power,hostboot,$(HOSTBOOT_VERSION))
 
 HOSTBOOT_LICENSE = Apache-2.0
diff --git a/openpower/package/occ/occ.mk b/openpower/package/occ/occ.mk
index 1a0b636..85a893a 100644
--- a/openpower/package/occ/occ.mk
+++ b/openpower/package/occ/occ.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-OCC_VERSION ?= 19678d6a7dd078e3206bac6f1d5e3cf03008542b
+OCC_VERSION ?= db9b6efae0555cbc4df2200e0e8a18e4a4c4477c
 OCC_SITE ?= $(call github,open-power,occ,$(OCC_VERSION))
 OCC_LICENSE = Apache-2.0
 OCC_DEPENDENCIES = host-binutils host-p8-pore-binutils
diff --git a/openpower/package/openpower-pnor/Config.in b/openpower/package/openpower-pnor/Config.in
index 6a23e51..2234d4e 100644
--- a/openpower/package/openpower-pnor/Config.in
+++ b/openpower/package/openpower-pnor/Config.in
@@ -46,6 +46,11 @@
         help
             String used to define name of sbec hostboot binary file
 
+config BR2_HOSTBOOT_BINARY_WINK_FILENAME
+        string "Name of winkle hostboot binary"
+        help
+            String used to define name of winkle hostboot binary file
+
 config BR2_OPENPOWER_TARGETING_BIN_FILENAME
         string "Name of openpower binary targeting file"
         help
diff --git a/openpower/package/openpower-pnor/openpower-pnor.mk b/openpower/package/openpower-pnor/openpower-pnor.mk
index fb7e230..658a949 100644
--- a/openpower/package/openpower-pnor/openpower-pnor.mk
+++ b/openpower/package/openpower-pnor/openpower-pnor.mk
@@ -8,7 +8,7 @@
 # make doesn't care for quotes in the dependencies.
 XML_PACKAGE=$(subst $\",,$(BR2_OPENPOWER_XML_PACKAGE))
 
-OPENPOWER_PNOR_VERSION ?= 3748ff041448a3909d5ffc5e62befcfcb597c0c1
+OPENPOWER_PNOR_VERSION ?= ed1682e10526ebd85825427fbf397361bb0e34aa
 OPENPOWER_PNOR_SITE ?= $(call github,open-power,pnor,$(OPENPOWER_PNOR_VERSION))
 
 OPENPOWER_PNOR_LICENSE = Apache-2.0
@@ -48,6 +48,7 @@
             -targeting_binary_source $(BR2_OPENPOWER_TARGETING_BIN_FILENAME) \
             -sbe_binary_filename $(BR2_HOSTBOOT_BINARY_SBE_FILENAME) \
             -sbec_binary_filename $(BR2_HOSTBOOT_BINARY_SBEC_FILENAME) \
+            -wink_binary_filename $(BR2_HOSTBOOT_BINARY_WINK_FILENAME) \
             -occ_binary_filename $(OCC_STAGING_DIR)/$(BR2_OCC_BIN_FILENAME) \
             -capp_binary_filename $(BINARIES_DIR)/$(BR2_CAPP_UCODE_BIN_FILENAME) \
             -openpower_version_filename $(OPENPOWER_PNOR_VERSION_FILE)
@@ -63,6 +64,7 @@
             -bootkernel $(BINARIES_DIR)/$(LINUX_IMAGE_NAME) \
             -sbe_binary_filename $(BR2_HOSTBOOT_BINARY_SBE_FILENAME) \
             -sbec_binary_filename $(BR2_HOSTBOOT_BINARY_SBEC_FILENAME) \
+            -wink_binary_filename $(BR2_HOSTBOOT_BINARY_WINK_FILENAME) \
             -occ_binary_filename $(OCC_STAGING_DIR)/$(BR2_OCC_BIN_FILENAME) \
             -targeting_binary_filename $(BR2_OPENPOWER_TARGETING_ECC_FILENAME) \
             -openpower_version_filename $(OPENPOWER_PNOR_VERSION_FILE)
diff --git a/openpower/package/pkg-versions.mk b/openpower/package/pkg-versions.mk
index e3acbda..e2e3af0 100644
--- a/openpower/package/pkg-versions.mk
+++ b/openpower/package/pkg-versions.mk
@@ -70,16 +70,16 @@
 echo -n "-" >> $$($(2)_VERSION_FILE); \
 \
 cd "$$($(2)_SITE)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
-	| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \
+	| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/;s/$(1)-//;' | xargs echo -n \
 	>> $$($(2)_VERSION_FILE); \
 \
-cd "$$($(2)_SITE)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
+cd "$$($(2)_SITE)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/;' | \
 	xargs echo -n >> $$($(2)_VERSION_FILE); \
 else \
 \
 [ `echo -n $$($(2)_VERSION) | wc -c` == "40" ] && (echo -n $$($(2)_VERSION) | \
-	sed "s/^\([0-9a-f]\{7\}\).*/\1/" >> $$($(2)_VERSION_FILE)) \
-	|| echo -n $$($(2)_VERSION) >> $$($(2)_VERSION_FILE); \
+	sed "s/^\([0-9a-f]\{7\}\).*/\1/;s/$(1)-//;" >> $$($(2)_VERSION_FILE)) \
+	|| echo -n $$($(2)_VERSION) | sed -e 's/$(1)-//' >> $$($(2)_VERSION_FILE); \
 \
 cd "$$(BR2_EXTERNAL)"; git describe --all --dirty | \
 	if grep -e "-dirty"; then \
diff --git a/openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch b/openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch
deleted file mode 100644
index 68a4cbd..0000000
--- a/openpower/package/skiboot/skiboot-0002-prd-Only-alter-host-presentation-bits-of-IPOLL-mask.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-diff --git a/hw/prd.c b/hw/prd.c
-index e65ae57..4862213 100644
---- a/hw/prd.c
-+++ b/hw/prd.c
-@@ -226,12 +226,13 @@ static int ipoll_record_and_mask_pending(uint32_t proc)
- 
- 	lock(&ipoll_lock);
- 	rc = xscom_read(proc, PRD_IPOLL_REG_STATUS, &status);
-+	status &= PRD_IPOLL_MASK;
- 	if (!rc)
- 		__ipoll_update_mask(proc, true, status);
- 	unlock(&ipoll_lock);
- 
- 	if (!rc)
--		ipoll_status[proc] |= (status & PRD_IPOLL_MASK);
-+		ipoll_status[proc] |= status;
- 
- 	return rc;
- }
-@@ -284,7 +285,8 @@ static int prd_msg_handle_init(struct opal_prd_msg *msg)
- 
- 	lock(&ipoll_lock);
- 	for_each_chip(chip) {
--		__ipoll_update_mask(chip->id, false, msg->init.ipoll);
-+		__ipoll_update_mask(chip->id, false,
-+			msg->init.ipoll & PRD_IPOLL_MASK);
- 	}
- 	unlock(&ipoll_lock);
- 
-@@ -309,7 +311,7 @@ static int prd_msg_handle_fini(void)
- 
- 	lock(&ipoll_lock);
- 	for_each_chip(chip) {
--		__ipoll_update_mask(chip->id, true, -1ul);
-+		__ipoll_update_mask(chip->id, true, PRD_IPOLL_MASK);
- 	}
- 	unlock(&ipoll_lock);
- 
-@@ -345,7 +347,7 @@ void prd_init(void)
- 	/* mask everything */
- 	lock(&ipoll_lock);
- 	for_each_chip(chip) {
--		__ipoll_update_mask(chip->id, true, -1ul);
-+		__ipoll_update_mask(chip->id, true, PRD_IPOLL_MASK);
- 	}
- 	unlock(&ipoll_lock);
- 
diff --git a/openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch b/openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch
deleted file mode 100644
index e71e17e..0000000
--- a/openpower/package/skiboot/skiboot-0003-xscom-remove-recursive-locking.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-diff --git a/hw/xscom.c b/hw/xscom.c
-index 6bd71a3..a3533be 100644
---- a/hw/xscom.c
-+++ b/hw/xscom.c
-@@ -342,7 +342,6 @@  static uint32_t xscom_decode_chiplet(uint32_t partid, uint64_t *pcb_addr)
-  */
- int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val)
- {
--	bool need_unlock;
- 	uint32_t gcid;
- 	int rc;
- 
-@@ -360,12 +359,8 @@  int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val)
- 		return OPAL_PARAMETER;
- 	}
- 
--	/*
--	 * HW822317 requires locking. We use a recursive lock as error
--	 * conditions might cause printf's which might then try to take
--	 * the lock again
--	 */
--	need_unlock = lock_recursive(&xscom_lock);
-+	/* HW822317 requires us to do global locking */
-+	lock(&xscom_lock);
- 
- 	/* Direct vs indirect access */
- 	if (pcb_addr & XSCOM_ADDR_IND_FLAG)
-@@ -374,8 +369,7 @@  int xscom_read(uint32_t partid, uint64_t pcb_addr, uint64_t *val)
- 		rc = __xscom_read(gcid, pcb_addr & 0x7fffffff, val);
- 
- 	/* Unlock it */
--	if (need_unlock)
--		unlock(&xscom_lock);
-+	unlock(&xscom_lock);
- 	return rc;
- }
- 
-@@ -383,7 +377,6 @@  opal_call(OPAL_XSCOM_READ, xscom_read, 3);
- 
- int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val)
- {
--	bool need_unlock;
- 	uint32_t gcid;
- 	int rc;
- 
-@@ -401,12 +394,8 @@  int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val)
- 		return OPAL_PARAMETER;
- 	}
- 
--	/*
--	 * HW822317 requires locking. We use a recursive lock as error
--	 * conditions might cause printf's which might then try to take
--	 * the lock again
--	 */
--	need_unlock = lock_recursive(&xscom_lock);
-+	/* HW822317 requires us to do global locking */
-+	lock(&xscom_lock);
- 
- 	/* Direct vs indirect access */
- 	if (pcb_addr & XSCOM_ADDR_IND_FLAG)
-@@ -415,8 +404,7 @@  int xscom_write(uint32_t partid, uint64_t pcb_addr, uint64_t val)
- 		rc = __xscom_write(gcid, pcb_addr & 0x7fffffff, val);
- 
- 	/* Unlock it */
--	if (need_unlock)
--		unlock(&xscom_lock);
-+	unlock(&xscom_lock);
- 	return rc;
- }
- opal_call(OPAL_XSCOM_WRITE, xscom_write, 3);
diff --git a/openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch b/openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch
deleted file mode 100644
index f19f6aa..0000000
--- a/openpower/package/skiboot/skiboot-0004-Add-xscom_ok-and-lpc_ok-to-check-XSCOM-and-LPC-usability.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-diff --git a/hw/bt.c b/hw/bt.c
-index 7bf1b2f..8bb44cd 100644
---- a/hw/bt.c
-+++ b/hw/bt.c
-@@ -350,7 +350,8 @@  static void print_debug_queue_info(void) {}
- 
- static void bt_send_and_unlock(void)
- {
--	if (bt.state == BT_STATE_IDLE && !list_empty(&bt.msgq))
-+	if (lpc_ok() &&
-+	    bt.state == BT_STATE_IDLE && !list_empty(&bt.msgq))
- 		bt_send_msg();
- 
- 	unlock(&bt.lock);
-@@ -361,6 +362,10 @@  static void bt_poll(struct timer *t __unused, void *data __unused)
- {
- 	uint8_t bt_ctrl;
- 
-+	/* Don't do anything if the LPC bus is offline */
-+	if (!lpc_ok())
-+		return;
-+
- 	/* If we can't get the lock assume someone else will notice
- 	 * the new message and process it. */
- 	lock(&bt.lock);
-@@ -440,7 +445,9 @@  static int bt_add_ipmi_msg(struct ipmi_msg *ipmi_msg)
- 
- void bt_irq(void)
- {
--	uint8_t ireg = bt_inb(BT_INTMASK);
-+	uint8_t ireg;
-+
-+	ireg = bt_inb(BT_INTMASK);
- 
- 	bt.irq_ok = true;
- 	if (ireg & BT_INTMASK_B2H_IRQ) {
-diff --git a/hw/lpc-uart.c b/hw/lpc-uart.c
-index 2e6114a..7c3190e 100644
---- a/hw/lpc-uart.c
-+++ b/hw/lpc-uart.c
-@@ -135,6 +135,10 @@  static size_t uart_con_write(const char *buf, size_t len)
- {
- 	size_t written = 0;
- 
-+	/* If LPC bus is bad, we just swallow data */
-+	if (!lpc_ok())
-+		return written;
-+
- 	lock(&uart_lock);
- 	while(written < len) {
- 		if (tx_room == 0) {
-diff --git a/hw/lpc.c b/hw/lpc.c
-index 0db674f..b287020 100644
---- a/hw/lpc.c
-+++ b/hw/lpc.c
-@@ -500,3 +500,15 @@  void lpc_used_by_console(void)
- 		unlock(&chip->lpc_lock);
- 	}
- }
-+
-+bool lpc_ok(void)
-+{
-+	struct proc_chip *chip;
-+
-+	if (lpc_default_chip_id < 0)
-+		return false;
-+	if (!xscom_ok())
-+		return false;
-+	chip = get_chip(lpc_default_chip_id);
-+	return !lock_held_by_me(&chip->lpc_lock);
-+}
-diff --git a/hw/xscom.c b/hw/xscom.c
-index a3533be..07b9b94 100644
---- a/hw/xscom.c
-+++ b/hw/xscom.c
-@@ -531,3 +531,8 @@  void xscom_used_by_console(void)
- 	lock(&xscom_lock);
- 	unlock(&xscom_lock);
- }
-+
-+bool xscom_ok(void)
-+{
-+	return !lock_held_by_me(&xscom_lock);
-+}
-diff --git a/include/lpc.h b/include/lpc.h
-index 5611c54..a0990fd 100644
---- a/include/lpc.h
-+++ b/include/lpc.h
-@@ -27,6 +27,12 @@  extern void lpc_init(void);
- /* Check for a default bus */
- extern bool lpc_present(void);
- 
-+/* Return of LPC is currently usable. This can be false if the caller
-+ * currently holds a lock that would make it unsafe, or the LPC bus
-+ * is known to be in some error condition (TBI).
-+ */
-+extern bool lpc_ok(void);
-+
- /* Handle the interrupt from LPC source */
- extern void __attrconst lpc_interrupt(uint32_t chip_id);
- 
-diff --git a/include/xscom.h b/include/xscom.h
-index b1ecaf5..a841261 100644
---- a/include/xscom.h
-+++ b/include/xscom.h
-@@ -173,6 +173,11 @@  extern void xscom_init(void);
- /* Mark XSCOM lock as being in console path */
- extern void xscom_used_by_console(void);
- 
-+/* Returns true if XSCOM can be used. Typically this returns false if
-+ * the current CPU holds the XSCOM lock (to avoid re-entrancy from error path).
-+ */
-+extern bool xscom_ok(void);
-+
- extern int64_t xscom_read_cfam_chipid(uint32_t partid, uint32_t *chip_id);
- 
- #endif /* __XSCOM_H */
diff --git a/openpower/package/skiboot/skiboot.mk b/openpower/package/skiboot/skiboot.mk
index 3b4ad1a..7034ad7 100644
--- a/openpower/package/skiboot/skiboot.mk
+++ b/openpower/package/skiboot/skiboot.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-SKIBOOT_VERSION = skiboot-5.0-rc3
+SKIBOOT_VERSION = skiboot-5.0.2
 SKIBOOT_SITE = $(call github,open-power,skiboot,$(SKIBOOT_VERSION))
 SKIBOOT_INSTALL_IMAGES = YES
 SKIBOOT_INSTALL_TARGET = NO
