Merge pull request #868 from sannerd/p9_bu_17_02_06.rel

P9 bu 17 02 06.rel
diff --git a/README.md b/README.md
index 907b586..ea8a65e 100644
--- a/README.md
+++ b/README.md
@@ -49,7 +49,7 @@
 
 ### Dependencies for *64-bit* Fedora systems
 
-1. Install Fedora 23 64-bit.
+1. Install Fedora 25 64-bit (older Fedora should also work).
 2. Install the packages necessary for the build:
 
         sudo dnf install gcc-c++ flex bison git ctags cscope expat-devel patch \
diff --git a/ci/Dockerfile/fedora23.x86_64 b/ci/Dockerfile/fedora23.x86_64
deleted file mode 120000
index 5322ce7..0000000
--- a/ci/Dockerfile/fedora23.x86_64
+++ /dev/null
@@ -1 +0,0 @@
-fedora23
\ No newline at end of file
diff --git a/ci/Dockerfile/fedora23 b/ci/Dockerfile/fedora25
similarity index 86%
rename from ci/Dockerfile/fedora23
rename to ci/Dockerfile/fedora25
index 7fff2ff..9414efc 100644
--- a/ci/Dockerfile/fedora23
+++ b/ci/Dockerfile/fedora25
@@ -1,6 +1,6 @@
-FROM fedora:23
+FROM fedora:25
 RUN dnf -y remove vim-minimal
-RUN dnf -y install gcc-c++ flex bison git ctags cscope expat-devel patch zlib-devel zlib-static texinfo perl-bignum "perl(XML::Simple)" "perl(YAML)" "perl(XML::SAX)" "perl(Fatal)" "perl(Thread::Queue)" "perl(Env)" "perl(XML::LibXML)" "perl(Digest::SHA1)" libxml2-devel libxslt
+RUN dnf -y install gcc-c++ flex bison git ctags cscope expat-devel patch zlib-devel zlib-static texinfo perl-bignum "perl(XML::Simple)" "perl(YAML)" "perl(XML::SAX)" "perl(Fatal)" "perl(Thread::Queue)" "perl(Env)" "perl(XML::LibXML)" "perl(Digest::SHA1)" libxml2-devel libxslt "perl(ExtUtils::MakeMaker)"
 RUN dnf -y install which wget unzip tar cpio python bzip2 bc vim redhat-lsb-core
 RUN dnf -y install findutils
 RUN dnf -y install ncurses-devel
diff --git a/ci/Dockerfile/fedora25.x86_64 b/ci/Dockerfile/fedora25.x86_64
new file mode 120000
index 0000000..c6db8fc
--- /dev/null
+++ b/ci/Dockerfile/fedora25.x86_64
@@ -0,0 +1 @@
+fedora25
\ No newline at end of file
diff --git a/ci/build.sh b/ci/build.sh
index 64b862d..0ace0e1 100755
--- a/ci/build.sh
+++ b/ci/build.sh
@@ -1,6 +1,8 @@
 #!/bin/bash
 
-while getopts ":ahp:" opt; do
+CONTAINERS="ubuntu1404 fedora25"
+
+while getopts ":ahp:c:" opt; do
   case $opt in
     a)
       echo "Build firmware images for all the platforms"
@@ -10,11 +12,16 @@
       echo "Build firmware images for the platforms: $OPTARG"
       PLATFORMS=$OPTARG
       ;;
+    c)
+      echo "Build in container: $OPTARG"
+      CONTAINERS=$OPTARG
+      ;;
     h)
       echo "Usage: ./ci/build.sh [options] [--]"
       echo "-h          Print this help and exit successfully."
       echo "-a          Build firmware images for all the platform defconfig's."
       echo "-p          List of comma separated platform names to build images for particular platforms."
+      echo "-c          Container to run in"
       echo "Example:DOCKER_PREFIX=sudo ./ci/build.sh -a"
       echo -e "\tDOCKER_PREFIX=sudo ./ci/build.sh -p firestone"
       echo -e "\tDOCKER_PREFIX=sudo ./ci/build.sh -p garrison,palmetto,openpower_p9_mambo"
@@ -48,7 +55,7 @@
 	exit 1;
 fi
 
-for distro in ubuntu1404 fedora23;
+for distro in $CONTAINERS;
 do
 	base_dockerfile=ci/Dockerfile/$distro.`arch`
 	if [ ! -f $base_dockerfile ]; then
@@ -59,7 +66,7 @@
 		http_proxy=$HTTP_PROXY
 	fi
 	if [[ -n "$http_proxy" ]]; then
-	  if [[ "$distro" == fedora23 ]]; then
+	  if [[ "$distro" == fedora25 ]]; then
 	    PROXY="RUN echo \"proxy=${http_proxy}\" >> /etc/dnf/dnf.conf"
 	  fi
 	  if [[ "$distro" == ubuntu1404 ]]; then
diff --git a/openpower/configs/hostboot/witherspoon.config b/openpower/configs/hostboot/witherspoon.config
index 5e1197d..f19bff7 100755
--- a/openpower/configs/hostboot/witherspoon.config
+++ b/openpower/configs/hostboot/witherspoon.config
@@ -12,15 +12,15 @@
 set MVPD_READ_FROM_PNOR
 set MVPD_WRITE_TO_PNOR
 set DJVPD_READ_FROM_HW
-unset DJVPD_WRITE_TO_HW
+set DJVPD_WRITE_TO_HW
 set DJVPD_READ_FROM_PNOR
 set DJVPD_WRITE_TO_PNOR
-set CVPD_READ_FROM_HW
-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
+unset MEMVPD_READ_FROM_HW
+unset MEMVPD_WRITE_TO_HW
+set MEMVPD_READ_FROM_PNOR
+set MEMVPD_WRITE_TO_PNOR
+unset PVPD_READ_FROM_HW
+unset PVPD_WRITE_TO_HW
 set PVPD_READ_FROM_PNOR
 set PVPD_WRITE_TO_PNOR
 unset CDIMM_FORMAT_FOR_CVPD
@@ -29,9 +29,10 @@
 set GPIODD
 unset PALMETTO_VDDR
 
-# Enable SBE updates
+# Disable SBE updates
 unset SBE_UPDATE_INDEPENDENT
 unset SBE_UPDATE_SEQUENTIAL
+unset SBE_UPDATE_SIMULTANEOUS
 set NO_SBE_UPDATES
 
 unset PCIE_HOTPLUG_CONTROLLER
@@ -50,17 +51,18 @@
 #PNOR flags
 unset PNOR_TWO_SIDE_SUPPORT
 
-unset BMC_BT_LPC_IPMI
+set BMC_BT_LPC_IPMI
 
-# Enable Checktop Analysis
+# Disable Checktop Analysis
 unset ENABLE_CHECKSTOP_ANALYSIS
 unset IPLTIME_CHECKSTOP_ANALYSIS
 
-# Hostboot will detect hardware changes
+# Hostboot will not detect hardware changes
 unset HOST_HCDB_SUPPORT
 
 # set for trace debug to console
 unset CONSOLE_OUTPUT_TRACE
+set CONSOLE_OUTPUT_FFDCDISPLAY
 
 unset CONFIG_SECUREBOOT
 unset CONFIG_TPMDD
diff --git a/openpower/configs/witherspoon_defconfig b/openpower/configs/witherspoon_defconfig
index 437d90b..b926c26 100644
--- a/openpower/configs/witherspoon_defconfig
+++ b/openpower/configs/witherspoon_defconfig
@@ -57,6 +57,8 @@
 BR2_PACKAGE_PETITBOOT_MTD=y
 BR2_OCC_BIN_FILENAME="occ.bin"
 BR2_CAPP_UCODE_BIN_FILENAME="cappucode.bin"
+BR2_SKIBOOT_CUSTOM_VERSION=y
+BR2_SKIBOOT_CUSTOM_VERSION_VALUE="8c51fda780093be69a49a43824b2cb88fbf27623"
 BR2_PACKAGE_LOADKEYS=y
 BR2_WITHERSPOON_SYSTEM_XML_FILENAME="WITHERSPOON_hb.system.xml"
 BR2_WITHERSPOON_MRW_XML_FILENAME="WITHERSPOON_hb.mrw.xml"
diff --git a/openpower/package/garrison-xml/garrison.mk b/openpower/package/garrison-xml/garrison.mk
index 5b95379..a4a5065 100644
--- a/openpower/package/garrison-xml/garrison.mk
+++ b/openpower/package/garrison-xml/garrison.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GARRISON_XML_VERSION ?= c4d238ee2f893d2b52b88c36c993e2c497ee6443
+GARRISON_XML_VERSION ?= 847371f2141e2d4320fa6700ee2dd9b97057831b
 GARRISON_XML_SITE ?= $(call github,open-power,garrison-xml,$(GARRISON_XML_VERSION))
 
 GARRISON_XML_LICENSE = Apache-2.0
diff --git a/openpower/package/hostboot-binaries/hostboot_binaries.mk b/openpower/package/hostboot-binaries/hostboot_binaries.mk
index a814769..36f40c8 100644
--- a/openpower/package/hostboot-binaries/hostboot_binaries.mk
+++ b/openpower/package/hostboot-binaries/hostboot_binaries.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-HOSTBOOT_BINARIES_VERSION ?= 7425fb1d540920f0397f57f6c54a180f4f6a720e
+HOSTBOOT_BINARIES_VERSION ?= 541a2bd2ceffc0d2d12776e213b95b5b0201bea6
 HOSTBOOT_BINARIES_SITE ?= $(call github,open-power,hostboot-binaries,$(HOSTBOOT_BINARIES_VERSION))
 HOSTBOOT_BINARIES_LICENSE = Apache-2.0
 HOSTBOOT_BINARIES_LICENSE_FILES = LICENSE
diff --git a/openpower/package/hostboot/hostboot.mk b/openpower/package/hostboot/hostboot.mk
index 0e64418..188860a 100644
--- a/openpower/package/hostboot/hostboot.mk
+++ b/openpower/package/hostboot/hostboot.mk
@@ -3,8 +3,8 @@
 # hostboot
 #
 ################################################################################
-HOSTBOOT_VERSION_BRANCH_MASTER_P8 ?= f2b28bf6eee57757be45c45e514d2542d72aa350
-HOSTBOOT_VERSION_BRANCH_MASTER ?= b9fd10a99329adb4093c453bf9f80b05a6f31fa3
+HOSTBOOT_VERSION_BRANCH_MASTER_P8 ?= fe5c556993ce24fae1f70f6be9a071fbd89e616c
+HOSTBOOT_VERSION_BRANCH_MASTER ?= 678260620b9bcc2d35f84a6f12dcaaa7e2f3a583
 
 HOSTBOOT_VERSION ?= $(if $(BR2_OPENPOWER_POWER9),$(HOSTBOOT_VERSION_BRANCH_MASTER),$(HOSTBOOT_VERSION_BRANCH_MASTER_P8))
 HOSTBOOT_SITE ?= $(call github,open-power,hostboot,$(HOSTBOOT_VERSION))
diff --git a/openpower/package/hostboot/p9Patches/hostboot-0006-fix-AST2500-config.patch b/openpower/package/hostboot/p9Patches/hostboot-0006-fix-AST2500-config.patch
deleted file mode 100644
index 2c52864..0000000
--- a/openpower/package/hostboot/p9Patches/hostboot-0006-fix-AST2500-config.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 4bd0930e6d63bf714188ecacbe06a162b3529351 Mon Sep 17 00:00:00 2001
-From: Matt Ploetz <maploetz@us.ibm.com>
-Date: Sun, 6 Nov 2016 19:20:39 -0600
-Subject: [PATCH] Change AST2400 to default only if AST2500 isn't set
-
-Change-Id: Ic9c1da281fcdc650e7528a84377d4fbe51355c84
----
- src/usr/pnor/HBconfig | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/usr/pnor/HBconfig b/src/usr/pnor/HBconfig
-index c0dfde8..9ce13b1 100644
---- a/src/usr/pnor/HBconfig
-+++ b/src/usr/pnor/HBconfig
-@@ -5,7 +5,7 @@ config SFC_IS_IBM_DPSS
-         The Serial Flash Controller is the IBM DPSS FPGA.
- 
- config SFC_IS_AST2400
--    default y
-+    default y if !SFC_IS_AST2500
-     depends on !SFC_IS_IBM_DPSS && !SFC_IS_FAKE && !SFC_IS_AST2500
-     help
-         The Serial Flash Controller is the AST2400 BMC.
--- 
-1.8.2.2
-
diff --git a/openpower/package/pkg-versions.mk b/openpower/package/pkg-versions.mk
index 23ac15c..9a37bbb 100644
--- a/openpower/package/pkg-versions.mk
+++ b/openpower/package/pkg-versions.mk
@@ -40,7 +40,7 @@
 fi
 
 # If this is for linux, also check openpower/linux
-if [ $(filter "LINUX", "$(2)") == "$(2)" ]; then \
+if [ "LINUX" == "$(2)" ]; then \
 	if ls $$(BR2_EXTERNAL_OP_BUILD_PATH)/$(1)/*.patch 2>/dev/null; then sha512sum \
 		$$(BR2_EXTERNAL_OP_BUILD_PATH)/$(1)/*.patch | sha512sum | \
 		xargs echo >> $$(OPENPOWER_VERSION_DIR)/$(1).tmp_patch.txt; \
@@ -77,19 +77,17 @@
 whoami | xargs echo -n >> $$($(2)_VERSION_FILE); \
 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/;s/$(1)-//;' | xargs echo -n \
+cd "$$($(2)_SITE)"; (git describe --always --dirty || echo "unknown") \
+	|sed -e 's/$(1)-//' | xargs echo -n\
 	>> $$($(2)_VERSION_FILE); \
 \
-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/;s/$(1)-//;" >> $$($(2)_VERSION_FILE)) \
 	|| echo -n $$($(2)_VERSION) | sed -e 's/$(1)-//' >> $$($(2)_VERSION_FILE); \
 \
-if [ $(filter "LINUX", "$(2)") == "$(2)" ]; then \
+if [ "LINUX" == "$(2)" ]; then \
 	if ls $$(BUILD_DIR)/$(1)-$$($(2)_VERSION)/Makefile 1>/dev/null; then \
 		head $$(BUILD_DIR)/$(1)-$$($(2)_VERSION)/Makefile | grep EXTRAVERSION \
 		| cut -d ' ' -f 3 | \
@@ -97,13 +95,8 @@
 	fi; \
 fi; \
 \
-cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; git describe --all --dirty | \
-	if grep -e "-dirty"; then \
-	echo -n "-opdirty" >> $$($(2)_VERSION_FILE); \
-	fi; \
-\
 if [ -f $$(OPENPOWER_VERSION_DIR)/$(1).patch.txt ]; then \
-	echo -n "-" >> $$($(2)_VERSION_FILE); \
+	echo -n "-p" >> $$($(2)_VERSION_FILE); \
 	cat $$(OPENPOWER_VERSION_DIR)/$(1).patch.txt >> $$($(2)_VERSION_FILE); fi \
 fi
 
@@ -152,14 +145,14 @@
 mkdir -p "$$(OPENPOWER_VERSION_DIR)"
 
 # Add vendor or default open-power
-if [ "$$(OPBUILD_VENDOR)" != '' ]; then \
+if [ -n "$$(OPBUILD_VENDOR)" ]; then \
 echo -n "$$(OPBUILD_VENDOR)-" > $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
 else \
 echo -n "open-power-" > $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
 fi
 
 # Add platform or default from defconfig
-if [ "$$(OPBUILD_PLATFORM)" != '' ]; then \
+if [ -n "$$(OPBUILD_PLATFORM)" ]; then \
 echo -n "$$(OPBUILD_PLATFORM)-" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
 else \
 echo -n "$$(BR2_OPENPOWER_CONFIG_NAME)-" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
@@ -167,38 +160,30 @@
 
 # Add op-build version
 # Order: OPBUILD_VERSION, tag, commit, unknown
-if [ "$$(OPBUILD_VERSION)" != '' ]; then \
+if [ -n "$$(OPBUILD_VERSION)" ]; then \
 	echo -n "$$(OPBUILD_VERSION)" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
 else \
-cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
-	| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \
+cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; (git describe --always --dirty || echo "unknown") \
+	| xargs echo -n \
 	>> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
 fi
 
-# Check if op-build is dirty
-cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
-	xargs echo -n >> $$($$(UPPER_CASE_PKG)_VERSION_FILE);
-
 # Add new line to $$($$(UPPER_CASE_PKG)_VERSION_FILE)
 echo "" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE);
 
 # Add a specific line for op-build if it has been overwritten
-if [ "$$(OPBUILD_VENDOR)" != '' ]; then \
+if [ -n "$$(OPBUILD_VENDOR)" ]; then \
 echo -n "	op-build-" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
-cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
-	| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \
+(cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; (git describe --always --dirty  || echo "unknown")) \
+	| xargs echo \
 	>> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
-cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
-	xargs echo >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
 fi
 
 # Include the currently checked-out buildroot version
 echo -n "	buildroot-" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE);
-cd "./buildroot"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
-	| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \
+(git describe --always --dirty || echo "unknown") \
+	| xargs echo \
 	>> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
-git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
-	xargs echo >> $$($$(UPPER_CASE_PKG)_VERSION_FILE);
 
 
 # Combing subpackage version files into $$($$(UPPER_CASE_PKG)_VERSION_FILE)
diff --git a/openpower/package/ppe42-binutils/ppe42-binutils.mk b/openpower/package/ppe42-binutils/ppe42-binutils.mk
index 3a9c125..68579d8 100644
--- a/openpower/package/ppe42-binutils/ppe42-binutils.mk
+++ b/openpower/package/ppe42-binutils/ppe42-binutils.mk
@@ -21,8 +21,8 @@
 					--enable-shared \
 					--enable-64-bit-bfd \
 					&& \
-        make configure-host && \
-        make LDFLAGS=-all-static CFLAGS=-Wno-error=unused-value
+        $(MAKE) configure-host && \
+        $(MAKE) LDFLAGS=-all-static CFLAGS=-Wno-error
 endef
 
 define HOST_PPE42_BINUTILS_INSTALL_CMDS
diff --git a/openpower/package/ppe42-gcc/0001-2016-02-19-Jakub-Jelinek-jakub-redhat.com.patch b/openpower/package/ppe42-gcc/0001-2016-02-19-Jakub-Jelinek-jakub-redhat.com.patch
new file mode 100644
index 0000000..c5dc6d4
--- /dev/null
+++ b/openpower/package/ppe42-gcc/0001-2016-02-19-Jakub-Jelinek-jakub-redhat.com.patch
@@ -0,0 +1,150 @@
+From ec1cc0263f156f70693a62cf17b254a0029f4852 Mon Sep 17 00:00:00 2001
+From: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Fri, 19 Feb 2016 22:13:29 +0000
+Subject: [PATCH] 2016-02-19  Jakub Jelinek  <jakub@redhat.com>            
+ Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+        * Make-lang.in: Invoke gperf with -L C++.
+        * cfns.gperf: Remove prototypes for hash and libc_name_p
+        inlines.
+        * cfns.h: Regenerated.
+        * except.c (nothrow_libfn_p): Adjust.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233572 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/cp/ChangeLog    |  9 +++++++++
+ gcc/cp/Make-lang.in |  2 +-
+ gcc/cp/cfns.gperf   | 10 ++--------
+ gcc/cp/cfns.h       | 41 ++++++++++++++---------------------------
+ gcc/cp/except.c     |  3 ++-
+ 5 files changed, 28 insertions(+), 37 deletions(-)
+
+diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
+index 671ce12..2286c64 100644
+--- a/gcc/cp/Make-lang.in
++++ b/gcc/cp/Make-lang.in
+@@ -112,7 +112,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+-	gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++	gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+ 		$(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+ 
+ #
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 2784edc..8d7f015 100644
+--- a/gcc/cp/cfns.gperf
++++ b/gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2016 Free Software Foundation, Inc.
+ 
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3.  If not see
+ <http://www.gnu.org/licenses/>.  */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index d8e02c9..9a37249 100644
+--- a/gcc/cp/cfns.h
++++ b/gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf  */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf  */
+ 
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+       && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+ #endif
+ 
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+ 
+ /* Copyright (C) 2000-2016 Free Software Foundation, Inc.
+ 
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3.  If not see
+ <http://www.gnu.org/licenses/>.  */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+ 
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++  static inline unsigned int hash (const char *str, unsigned int len);
++public:
++  static const char *libc_name_p (const char *str, unsigned int len);
++};
++
++inline unsigned int
++libc_name::hash (register const char *str, register unsigned int len)
+ {
+   static const unsigned short asso_values[] =
+     {
+@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
+   return hval + asso_values[(unsigned char)str[len - 1]];
+ }
+ 
+-#ifdef __GNUC__
+-__inline
+-#ifdef __GNUC_STDC_INLINE__
+-__attribute__ ((__gnu_inline__))
+-#endif
+-#endif
+ const char *
+-libc_name_p (register const char *str, register unsigned int len)
++libc_name::libc_name_p (register const char *str, register unsigned int len)
+ {
+   enum
+     {
+diff --git a/gcc/cp/except.c b/gcc/cp/except.c
+index c73a16b..5336710 100644
+--- a/gcc/cp/except.c
++++ b/gcc/cp/except.c
+@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
+      unless the system headers are playing rename tricks, and if
+      they are, we don't want to be confused by them.  */
+   id = DECL_NAME (fn);
+-  return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
++  return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
++				   IDENTIFIER_LENGTH (id));
+ }
+ 
+ /* Returns nonzero if an exception of type FROM will be caught by a
+-- 
+2.9.3
+
diff --git a/openpower/package/ppe42-gcc/ppe42-gcc.mk b/openpower/package/ppe42-gcc/ppe42-gcc.mk
index 2ebdf5b..0a8bc23 100644
--- a/openpower/package/ppe42-gcc/ppe42-gcc.mk
+++ b/openpower/package/ppe42-gcc/ppe42-gcc.mk
@@ -25,8 +25,8 @@
                     --with-gmp=$(HOST_DIR)/usr \
                     --with-mpfr=$(HOST_DIR)/usr \
                     && \
-        make configure-host && \
-        make all-gcc
+        $(MAKE) configure-host && \
+        $(MAKE) CFLAGS=-Wno-error all-gcc
 endef
 
 define HOST_PPE42_GCC_INSTALL_CMDS
diff --git a/openpower/package/witherspoon-xml/witherspoon.mk b/openpower/package/witherspoon-xml/witherspoon.mk
index 1f5b0b8..9ef3ef4 100644
--- a/openpower/package/witherspoon-xml/witherspoon.mk
+++ b/openpower/package/witherspoon-xml/witherspoon.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-WITHERSPOON_XML_VERSION ?= b92c88f3106bfea675874b14eb66968fd3e17264
+WITHERSPOON_XML_VERSION ?= 3fd670a903d5587c748cbca6749ac3059d54ec9d
 WITHERSPOON_XML_SITE ?= $(call github,open-power,witherspoon-xml,$(WITHERSPOON_XML_VERSION))
 
 WITHERSPOON_XML_LICENSE = Apache-2.0
@@ -41,6 +41,7 @@
             --tgt-xml $(MRW_HB_TOOLS)/target_types_merged.xml \
             --tgt-xml $(MRW_HB_TOOLS)/target_types_hb.xml \
             --tgt-xml $(MRW_HB_TOOLS)/target_types_oppowervm.xml \
+            --tgt-xml $(MRW_HB_TOOLS)/target_types_openpower.xml \
             --mrw-xml $(MRW_SCRATCH)/WITHERSPOON_hb.mrw.xml
 
        cp  $(MRW_SCRATCH)/WITHERSPOON_hb.mrw.xml.updated  $(MRW_SCRATCH)/WITHERSPOON_hb.mrw.xml
@@ -50,9 +51,11 @@
             $(MRW_HB_TOOLS)/attribute_types.xml \
             $(MRW_HB_TOOLS)/attribute_types_hb.xml \
             $(MRW_HB_TOOLS)/attribute_types_oppowervm.xml \
+            $(MRW_HB_TOOLS)/attribute_types_openpower.xml \
             $(MRW_HB_TOOLS)/target_types_merged.xml \
             $(MRW_HB_TOOLS)/target_types_hb.xml \
             $(MRW_HB_TOOLS)/target_types_oppowervm.xml \
+            $(MRW_HB_TOOLS)/target_types_openpower.xml \
             $(MRW_SCRATCH)/$(BR2_WITHERSPOON_MRW_XML_FILENAME) > $(MRW_HB_TOOLS)/temporary_hb.hb.xml;
 
         # creating the targeting binary
diff --git a/openpower/package/zaius-xml/zaius.mk b/openpower/package/zaius-xml/zaius.mk
index 14005dc..858079a 100644
--- a/openpower/package/zaius-xml/zaius.mk
+++ b/openpower/package/zaius-xml/zaius.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ZAIUS_XML_VERSION ?= 365f04dafc0a79f56b1a91b65b23571183ce1645
+ZAIUS_XML_VERSION ?= abfe0a30c5f541ca361e290e36c773f9bac7b55c
 ZAIUS_XML_SITE ?= $(call github,open-power,zaius-xml,$(ZAIUS_XML_VERSION))
 
 ZAIUS_XML_LICENSE = Apache-2.0
@@ -42,6 +42,7 @@
             --tgt-xml $(MRW_HB_TOOLS)/target_types_merged.xml \
             --tgt-xml $(MRW_HB_TOOLS)/target_types_hb.xml \
             --tgt-xml $(MRW_HB_TOOLS)/target_types_oppowervm.xml \
+            --tgt-xml $(MRW_HB_TOOLS)/target_types_openpower.xml \
             --mrw-xml $(MRW_SCRATCH)/$(BR2_ZAIUS_MRW_XML_FILENAME)
 
         cp $(MRW_SCRATCH)/$(BR2_ZAIUS_MRW_XML_FILENAME).updated \
@@ -52,9 +53,11 @@
             $(MRW_HB_TOOLS)/attribute_types.xml \
             $(MRW_HB_TOOLS)/attribute_types_hb.xml \
             $(MRW_HB_TOOLS)/attribute_types_oppowervm.xml \
+            $(MRW_HB_TOOLS)/attribute_types_openpower.xml \
             $(MRW_HB_TOOLS)/target_types_merged.xml \
             $(MRW_HB_TOOLS)/target_types_hb.xml \
             $(MRW_HB_TOOLS)/target_types_oppowervm.xml \
+            $(MRW_HB_TOOLS)/target_types_openpower.xml \
             $(MRW_SCRATCH)/$(BR2_ZAIUS_MRW_XML_FILENAME) > $(MRW_HB_TOOLS)/temporary_hb.hb.xml;
 
         # creating the targeting binary