Merge pull request #1154 from stewart-ibm/p9dsu-remove-update-pnor
p9dsu_defconfig: Remove BR2_OPENPOWER_PNOR_UPDATE_FILENAME
diff --git a/openpower/configs/hostboot/zaius.config b/openpower/configs/hostboot/zaius.config
index cd0390e..7f76996 100755
--- a/openpower/configs/hostboot/zaius.config
+++ b/openpower/configs/hostboot/zaius.config
@@ -47,8 +47,11 @@
# Compile in hostboot runtime PRD
set HBRT_PRD
-unset HTMGT
-unset START_OCC_DURING_BOOT
+
+# Compile in hb rt HTMGT : Load/Start OCC
+set HTMGT
+set START_OCC_DURING_BOOT
+unset CONSOLE_OUTPUT_OCC_COMM
#PNOR flags
unset PNOR_TWO_SIDE_SUPPORT
diff --git a/openpower/configs/p9dsu_defconfig b/openpower/configs/p9dsu_defconfig
index d82d443..ca84442 100644
--- a/openpower/configs/p9dsu_defconfig
+++ b/openpower/configs/p9dsu_defconfig
@@ -42,7 +42,7 @@
BR2_OPENPOWER_POWER9=y
BR2_HOSTBOOT_CONFIG_FILE="p9dsu.config"
BR2_OPENPOWER_MACHINE_XML_GITHUB_PROJECT_VALUE="p9dsu-xml"
-BR2_OPENPOWER_MACHINE_XML_VERSION="8ff7cebbaad6426e17706b7585300e63653a219e"
+BR2_OPENPOWER_MACHINE_XML_VERSION="1c5c5b43ace53371671ca189f7fae16fdf8fe3ed"
BR2_OPENPOWER_MACHINE_XML_FILENAME="p9dsu.xml"
BR2_OPENPOWER_SYSTEM_XML_FILENAME="P9DSU_hb.system.xml"
BR2_OPENPOWER_MRW_XML_FILENAME="P9DSU_hb.mrw.xml"
@@ -62,7 +62,5 @@
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="skiboot-5.6.0-64-g700b8962e5fe"
BR2_PACKAGE_LOADKEYS=y
BR2_IMA_CATALOG_DTS="POWER9"
diff --git a/openpower/configs/romulus_defconfig b/openpower/configs/romulus_defconfig
index 0618da7..6f1540a 100644
--- a/openpower/configs/romulus_defconfig
+++ b/openpower/configs/romulus_defconfig
@@ -60,7 +60,5 @@
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="skiboot-5.6.0-64-g700b8962e5fe"
BR2_PACKAGE_LOADKEYS=y
BR2_IMA_CATALOG_DTS="POWER9"
diff --git a/openpower/configs/witherspoon_defconfig b/openpower/configs/witherspoon_defconfig
index d4a9a45..309fc03 100644
--- a/openpower/configs/witherspoon_defconfig
+++ b/openpower/configs/witherspoon_defconfig
@@ -42,7 +42,7 @@
BR2_OPENPOWER_POWER9=y
BR2_HOSTBOOT_CONFIG_FILE="witherspoon.config"
BR2_OPENPOWER_MACHINE_XML_GITHUB_PROJECT_VALUE="witherspoon-xml"
-BR2_OPENPOWER_MACHINE_XML_VERSION="c5e17e084a1eb057fe8ad41af886e1558a407dc0"
+BR2_OPENPOWER_MACHINE_XML_VERSION="d0f86cf46a99800c6f15a4e650701da141216940"
BR2_OPENPOWER_MACHINE_XML_FILENAME="witherspoon.xml"
BR2_OPENPOWER_SYSTEM_XML_FILENAME="WITHERSPOON_hb.system.xml"
BR2_OPENPOWER_MRW_XML_FILENAME="WITHERSPOON_hb.mrw.xml"
@@ -62,7 +62,5 @@
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="skiboot-5.6.0-64-g700b8962e5fe"
BR2_PACKAGE_LOADKEYS=y
BR2_IMA_CATALOG_DTS="POWER9"
diff --git a/openpower/configs/zaius_defconfig b/openpower/configs/zaius_defconfig
index ae98890..2657629 100644
--- a/openpower/configs/zaius_defconfig
+++ b/openpower/configs/zaius_defconfig
@@ -42,7 +42,7 @@
BR2_OPENPOWER_POWER9=y
BR2_HOSTBOOT_CONFIG_FILE="zaius.config"
BR2_OPENPOWER_MACHINE_XML_GITHUB_PROJECT_VALUE="zaius-xml"
-BR2_OPENPOWER_MACHINE_XML_VERSION="6843fceba8404c600782fec2dcdcaca604e48d05"
+BR2_OPENPOWER_MACHINE_XML_VERSION="500647235aab6e2bb5a24dd00baab59083461833"
BR2_OPENPOWER_MACHINE_XML_FILENAME="zaius.xml"
BR2_OPENPOWER_SYSTEM_XML_FILENAME="ZAIUS_hb.system.xml"
BR2_OPENPOWER_MRW_XML_FILENAME="ZAIUS_hb.mrw.xml"
@@ -62,7 +62,5 @@
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="skiboot-5.6.0-64-g700b8962e5fe"
BR2_PACKAGE_LOADKEYS=y
BR2_IMA_CATALOG_DTS="POWER9"
diff --git a/openpower/configs/zz_defconfig b/openpower/configs/zz_defconfig
index bbe29cb..afd6fc7 100644
--- a/openpower/configs/zz_defconfig
+++ b/openpower/configs/zz_defconfig
@@ -51,8 +51,6 @@
# BR2_PACKAGE_HOST_P8_PORE_BINUTILS is not set
# BR2_PACKAGE_OCC is not set
# BR2_PACKAGE_CAPP_UCODE is not set
-BR2_SKIBOOT_CUSTOM_VERSION=y
-BR2_SKIBOOT_CUSTOM_VERSION_VALUE="skiboot-5.6.0-64-g700b8962e5fe"
BR2_PACKAGE_LOADKEYS=y
# BR2_PACKAGE_HOST_PPE42_BINUTILS is not set
# BR2_PACKAGE_HOST_PPE42_GCC is not set
diff --git a/openpower/overlay/etc/init.d/S18lvm b/openpower/overlay/etc/init.d/S18lvm
new file mode 100755
index 0000000..043e846
--- /dev/null
+++ b/openpower/overlay/etc/init.d/S18lvm
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+case "$1" in
+ start)
+ logger "Scanning for LVM volumes"
+ /usr/sbin/vgscan
+ /usr/sbin/vgchange -ay
+ ;;
+ stop)
+ logger "Stopping LVM volumes"
+ /usr/sbin/vgchange -an
+ ;;
+ restart|force-reload)
+ ;;
+esac
+
+exit 0
diff --git a/openpower/overlay/lib/udev/rules.d/10-dm.rules b/openpower/overlay/lib/udev/rules.d/10-dm.rules
new file mode 100644
index 0000000..f33df58
--- /dev/null
+++ b/openpower/overlay/lib/udev/rules.d/10-dm.rules
@@ -0,0 +1,150 @@
+# Copyright (C) 2009 Red Hat, Inc. All rights reserved.
+#
+# This file is part of LVM2.
+
+# Udev rules for device-mapper devices.
+#
+# These rules create a DM control node in /dev/mapper directory.
+# The rules also create nodes named dm-x (x is a number) in /dev
+# directory and symlinks to these nodes with names given by
+# the actual DM names. Some udev environment variables are set
+# for use in later rules:
+# DM_NAME - actual DM device's name
+# DM_UUID - UUID set for DM device (blank if not specified)
+# DM_SUSPENDED - suspended state of DM device (0 or 1)
+# DM_UDEV_RULES_VSN - DM udev rules version
+#
+# These rules cover only basic device-mapper functionality in udev.
+#
+# Various DM subsystems may contain further subsystem-specific rules
+# in 11-dm-<subsystem_name>.rules which should be installed together
+# with the DM subsystem and which extend these basic rules.
+# For example:
+# 11-dm-lvm.rules for LVM subsystem
+# 11-dm-mpath.rules for multipath subsystem (since version 0.6.0, recommended!)
+#
+# Even more specific rules may be required by subsystems so always
+# check subsystem's upstream repository for recent set of rules.
+# Also, keep in mind that recent rules may also require recent
+# subsystem-specific binaries.
+
+KERNEL=="device-mapper", NAME="mapper/control"
+
+SUBSYSTEM!="block", GOTO="dm_end"
+KERNEL!="dm-[0-9]*", GOTO="dm_end"
+
+
+# Device created, major and minor number assigned - "add" event generated.
+# Table loaded - no event generated.
+# Device resumed (or renamed) - "change" event generated.
+# Device removed - "remove" event generated.
+#
+# The dm-X nodes are always created, even on "add" event, we can't suppress
+# that (the node is created even earlier with devtmpfs). All the symlinks
+# (e.g. /dev/mapper) are created in right time after a device has its table
+# loaded and is properly resumed. For this reason, direct use of dm-X nodes
+# is not recommended.
+ACTION!="add|change", GOTO="dm_end"
+
+# Decode udev control flags and set environment variables appropriately.
+# These flags are encoded in DM_COOKIE variable that was introduced in
+# kernel version 2.6.31. Therefore, we can use this feature with
+# kernels >= 2.6.31 only. Cookie is not decoded for remove event.
+ENV{DM_COOKIE}=="?*", IMPORT{program}="/usr/sbin/dmsetup udevflags $env{DM_COOKIE}"
+
+# Rule out easy-to-detect inappropriate events first.
+ENV{DISK_RO}=="1", GOTO="dm_disable"
+
+# There is no cookie set nor any flags encoded in events not originating
+# in libdevmapper so we need to detect this and try to behave correctly.
+# For such spurious events, regenerate all flags from current udev database content
+# (this information would normally be inaccessible for spurious ADD and CHANGE events).
+ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}=="1", ENV{DM_ACTIVATION}="1", GOTO="dm_flags_done"
+IMPORT{db}="DM_UDEV_DISABLE_DM_RULES_FLAG"
+IMPORT{db}="DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG"
+IMPORT{db}="DM_UDEV_DISABLE_DISK_RULES_FLAG"
+IMPORT{db}="DM_UDEV_DISABLE_OTHER_RULES_FLAG"
+IMPORT{db}="DM_UDEV_LOW_PRIORITY_FLAG"
+IMPORT{db}="DM_UDEV_DISABLE_LIBRARY_FALLBACK_FLAG"
+IMPORT{db}="DM_UDEV_PRIMARY_SOURCE_FLAG"
+IMPORT{db}="DM_UDEV_FLAG7"
+IMPORT{db}="DM_UDEV_RULES_VSN"
+LABEL="dm_flags_done"
+
+# Normally, we operate on "change" events. But when coldplugging, there's an
+# "add" event present. We have to recognize this and do our actions in this
+# particular situation, too. Also, we don't want the nodes to be created
+# prematurely on "add" events while not coldplugging. We check
+# DM_UDEV_PRIMARY_SOURCE_FLAG to see if the device was activated correctly
+# before and if not, we ignore the "add" event totally. This way we can support
+# udev triggers generating "add" events (e.g. "udevadm trigger --action=add" or
+# "echo add > /sys/block/<dm_device>/uevent"). The trigger with "add" event is
+# also used at boot to reevaluate udev rules for all existing devices activated
+# before (e.g. in initrd). If udev is used in initrd, we require the udev init
+# script to not remove the existing udev database so we can reuse the information
+# stored at the time of device activation in the initrd.
+ACTION!="add", GOTO="dm_no_coldplug"
+ENV{DM_UDEV_RULES_VSN}!="1", ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}!="1", GOTO="dm_disable"
+ENV{DM_ACTIVATION}="1"
+LABEL="dm_no_coldplug"
+
+# Putting it together, following table is used to recognize genuine and spurious events.
+# N.B. Spurious events are generated based on use of the WATCH udev
+# rule or by triggering an event manually by "udevadm trigger" call
+# or by "echo <event_name> > /sys/block/dm-X/uevent".
+#
+# EVENT DM_UDEV_PRIMARY_SOURCE_FLAG DM_ACTIVATION
+# ======================================================================
+# add event (genuine) 0 0
+# change event (genuine) 1 1
+# add event (spurious)
+# |_ dev still not active 0 0
+# \_ dev already active 1 1
+# change event (spurious)
+# |_ dev still not active 0 0
+# \_ dev already active 1 0
+
+# "dm" sysfs subdirectory is available in newer versions of DM
+# only (kernels >= 2.6.29). We have to check for its existence
+# and use dmsetup tool instead to get the DM name, uuid and
+# suspended state if the "dm" subdirectory is not present.
+# The "suspended" item was added even later (kernels >= 2.6.31),
+# so we also have to call dmsetup if the kernel version used
+# is in between these releases.
+TEST=="dm", ENV{DM_NAME}="$attr{dm/name}", ENV{DM_UUID}="$attr{dm/uuid}", ENV{DM_SUSPENDED}="$attr{dm/suspended}"
+TEST!="dm", IMPORT{program}="/usr/sbin/dmsetup info -j %M -m %m -c --nameprefixes --noheadings --rows -o name,uuid,suspended"
+ENV{DM_SUSPENDED}!="?*", IMPORT{program}="/usr/sbin/dmsetup info -j %M -m %m -c --nameprefixes --noheadings --rows -o suspended"
+
+# dmsetup tool provides suspended state information in textual
+# form with values "Suspended"/"Active". We translate it to
+# 0/1 respectively to be consistent with sysfs values.
+ENV{DM_SUSPENDED}=="Active", ENV{DM_SUSPENDED}="0"
+ENV{DM_SUSPENDED}=="Suspended", ENV{DM_SUSPENDED}="1"
+
+# This variable provides a reliable way to check that device-mapper
+# rules were installed. It means that all needed variables are set
+# by these rules directly so there's no need to acquire them again
+# later. Other rules can alternate the functionality based on this
+# fact (e.g. fallback to rules that behave correctly even without
+# these rules installed). It also provides versioning for any
+# possible future changes.
+# VSN 1 - original rules
+# VSN 2 - add support for synthesized events
+ENV{DM_UDEV_RULES_VSN}="2"
+
+ENV{DM_UDEV_DISABLE_DM_RULES_FLAG}!="1", ENV{DM_NAME}=="?*", SYMLINK+="mapper/$env{DM_NAME}"
+
+# Avoid processing and scanning a DM device in the other (foreign)
+# rules if it is in suspended state. However, we still keep 'disk'
+# and 'DM subsystem' related rules enabled in this case.
+ENV{DM_SUSPENDED}=="1", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1"
+
+GOTO="dm_end"
+
+LABEL="dm_disable"
+ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}="1"
+ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1"
+ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1"
+OPTIONS:="nowatch"
+
+LABEL="dm_end"
diff --git a/openpower/overlay/lib/udev/rules.d/11-dm-lvm.rules b/openpower/overlay/lib/udev/rules.d/11-dm-lvm.rules
new file mode 100644
index 0000000..16b80f9
--- /dev/null
+++ b/openpower/overlay/lib/udev/rules.d/11-dm-lvm.rules
@@ -0,0 +1,54 @@
+# Copyright (C) 2009 Red Hat, Inc. All rights reserved.
+#
+# This file is part of LVM2.
+
+# Udev rules for LVM.
+#
+# These rules create symlinks for LVM logical volumes in
+# /dev/VG directory (VG is an actual VG name). Some udev
+# environment variables are set (they can be used in later
+# rules as well):
+# DM_LV_NAME - logical volume name
+# DM_VG_NAME - volume group name
+# DM_LV_LAYER - logical volume layer (blank if not set)
+
+# "add" event is processed on coldplug only!
+ACTION!="add|change", GOTO="lvm_end"
+ENV{DM_UDEV_RULES_VSN}!="?*", GOTO="lvm_end"
+ENV{DM_UUID}!="LVM-?*", GOTO="lvm_end"
+
+# Use DM name and split it up into its VG/LV/layer constituents.
+IMPORT{program}="/usr/sbin/dmsetup splitname --nameprefixes --noheadings --rows $env{DM_NAME}"
+
+# DM_SUBSYSTEM_UDEV_FLAG0 is the 'NOSCAN' flag for LVM subsystem.
+# This flag is used to temporarily disable selected rules to prevent any
+# processing or scanning done on the LVM volume before LVM has any chance
+# to zero any stale metadata found within the LV data area. Such stale
+# metadata could cause false claim of the LV device, keeping it open etc.
+#
+# If the NOSCAN flag is present, backup selected existing flags used to
+# disable rules, then set them firmly so those selected rules are surely skipped.
+# Restore these flags once the NOSCAN flag is dropped (which is normally any
+# uevent that follows for this LV, even an artificially generated one).
+ENV{DM_SUBSYSTEM_UDEV_FLAG0}=="1", ENV{DM_NOSCAN}="1", ENV{DM_DISABLE_OTHER_RULES_FLAG_OLD}="$env{DM_UDEV_DISABLE_OTHER_RULES_FLAG}", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1"
+ENV{DM_SUBSYSTEM_UDEV_FLAG0}!="1", IMPORT{db}="DM_NOSCAN", IMPORT{db}="DM_DISABLE_OTHER_RULES_FLAG_OLD"
+ENV{DM_SUBSYSTEM_UDEV_FLAG0}!="1", ENV{DM_NOSCAN}=="1", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="$env{DM_DISABLE_OTHER_RULES_FLAG_OLD}", \
+ ENV{DM_DISABLE_OTHER_RULES_FLAG_OLD}="", ENV{DM_NOSCAN}=""
+
+ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}=="1", GOTO="lvm_end"
+
+OPTIONS+="event_timeout=180"
+
+# Do not create symlinks for inappropriate subdevices.
+ENV{DM_LV_NAME}=="pvmove?*|?*_vorigin", GOTO="lvm_disable"
+ENV{DM_LV_LAYER}=="?*", GOTO="lvm_disable"
+
+# Create symlinks for top-level devices only.
+ENV{DM_VG_NAME}=="?*", ENV{DM_LV_NAME}=="?*", SYMLINK+="$env{DM_VG_NAME}/$env{DM_LV_NAME}", GOTO="lvm_end"
+
+LABEL="lvm_disable"
+ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}="1"
+ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1"
+OPTIONS:="nowatch"
+
+LABEL="lvm_end"
diff --git a/openpower/overlay/lib/udev/rules.d/13-dm-disk.rules b/openpower/overlay/lib/udev/rules.d/13-dm-disk.rules
new file mode 100644
index 0000000..9958cac
--- /dev/null
+++ b/openpower/overlay/lib/udev/rules.d/13-dm-disk.rules
@@ -0,0 +1,39 @@
+# Copyright (C) 2009 Red Hat, Inc. All rights reserved.
+#
+# This file is part of LVM2.
+
+# Udev rules for device-mapper devices.
+#
+# These rules create symlinks in /dev/disk directory.
+# Symlinks that depend on probing filesystem type,
+# label and uuid are created only if the device is not
+# suspended.
+
+# "add" event is processed on coldplug only!
+ACTION!="add|change", GOTO="dm_end"
+ENV{DM_UDEV_RULES_VSN}!="?*", GOTO="dm_end"
+ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}=="1", GOTO="dm_end"
+
+SYMLINK+="disk/by-id/dm-name-$env{DM_NAME}"
+ENV{DM_UUID}=="?*", SYMLINK+="disk/by-id/dm-uuid-$env{DM_UUID}"
+
+ENV{DM_SUSPENDED}=="1", GOTO="dm_end"
+ENV{DM_NOSCAN}=="1", GOTO="dm_watch"
+
+IMPORT{builtin}="blkid"
+ENV{DM_UDEV_LOW_PRIORITY_FLAG}=="1", OPTIONS="link_priority=-100"
+ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
+ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
+
+# Add inotify watch to track changes on this device.
+# Using the watch rule is not optimal - it generates a lot of spurious
+# and useless events whenever the device opened for read-write is closed.
+# The best would be to generete the event directly in the tool changing
+# relevant information so only relevant events will be processed
+# (like creating a filesystem, changing filesystem label etc.).
+#
+# But let's use this until we have something better...
+LABEL="dm_watch"
+OPTIONS+="watch"
+
+LABEL="dm_end"
diff --git a/openpower/overlay/lib/udev/rules.d/95-dm-notify.rules b/openpower/overlay/lib/udev/rules.d/95-dm-notify.rules
new file mode 100644
index 0000000..e6bb512
--- /dev/null
+++ b/openpower/overlay/lib/udev/rules.d/95-dm-notify.rules
@@ -0,0 +1,12 @@
+# Copyright (C) 2009 Red Hat, Inc. All rights reserved.
+#
+# This file is part of LVM2.
+
+# Udev rules for device-mapper devices.
+#
+# These rules are responsible for sending a notification to a process
+# waiting for completion of udev rules. The process is identified by
+# a cookie value sent within "change" and "remove" events (the cookie
+# value is set before by that process for every action requested).
+
+ENV{DM_COOKIE}=="?*", RUN+="/usr/sbin/dmsetup udevcomplete $env{DM_COOKIE}"
diff --git a/openpower/package/hostboot/hostboot.mk b/openpower/package/hostboot/hostboot.mk
index ed4e725..83c9b80 100644
--- a/openpower/package/hostboot/hostboot.mk
+++ b/openpower/package/hostboot/hostboot.mk
@@ -4,7 +4,7 @@
#
################################################################################
HOSTBOOT_VERSION_BRANCH_MASTER_P8 ?= 695bd891343faf1f0ef85fe53148590e58239efd
-HOSTBOOT_VERSION_BRANCH_MASTER ?= 0f8d0c0955cc2a3769961257f4d39495ef6eba56
+HOSTBOOT_VERSION_BRANCH_MASTER ?= 3608c1ff8cc3df658c095280e0dab8705a6be036
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-0010-Updates-to-HBRT-runtime-interfaces.patch b/openpower/package/hostboot/p9Patches/hostboot-0010-Updates-to-HBRT-runtime-interfaces.patch
deleted file mode 100644
index e2d052f..0000000
--- a/openpower/package/hostboot/p9Patches/hostboot-0010-Updates-to-HBRT-runtime-interfaces.patch
+++ /dev/null
@@ -1,419 +0,0 @@
-From 826657215c64a6fba1f8141769af5a93994b4a5d Mon Sep 17 00:00:00 2001
-From: Dan Crowell <dcrowell@us.ibm.com>
-Date: Fri, 12 May 2017 15:40:46 -0500
-Subject: [PATCH] Updates to HBRT runtime interfaces
-
-Reconciling P9 function table with P8 table to make opal-prd
-work.
-
-Added new entries for:
-- firmware_request
-- get_ipoll_events
-- firmware_notify
-
-Added in entries for P8 functions:
-- get_interface_capabilities
-
-Added deprecated placeholders for P8 functions:
-- occ_load
-- occ_start
-- occ_stop
-
-Moved entries for:
-- load_pm_complex
-- start_pm_complex
-- reset_pm_complex
-
-Change-Id: I1892b4465a6e5901aa9eaa6a49e139a4bc4c5b56
----
- src/include/runtime/interface.h | 230 +++++++++++++++++++++++++++-------------
- src/runtime/rt_main.C | 26 ++++-
- 2 files changed, 182 insertions(+), 74 deletions(-)
-
-diff --git a/src/include/runtime/interface.h b/src/include/runtime/interface.h
-index aafbbf9..363e50c 100644
---- a/src/include/runtime/interface.h
-+++ b/src/include/runtime/interface.h
-@@ -37,9 +37,9 @@
- */
-
- /** Current interface version.
-- * 0x9001: 9=P9, 001=Version 1
-+ * 0x9001: 9=P9, 002=Version 2
- */
--#define HOSTBOOT_RUNTIME_INTERFACE_VERSION 0x9001
-+#define HOSTBOOT_RUNTIME_INTERFACE_VERSION 0x9002
-
- #ifndef __HOSTBOOT_RUNTIME_INTERFACE_VERSION_ONLY
-
-@@ -53,7 +53,7 @@ enum MemoryError_t
- * continues to report errors on subsequent reads. A second CE on that
- * cache line will result in memory UE. Therefore, it is advised to
- * migrate off of the address range as soon as possible. */
-- MEMORY_ERROR_CE,
-+ MEMORY_ERROR_CE = 0,
-
- /** Hardware has reported an uncorrectable error in memory (memory UE,
- * channel failure, etc). The hypervisor should migrate any partitions
-@@ -63,13 +63,13 @@ enum MemoryError_t
- * partition failures to handle the hardware attentions so that the
- * hypervisor will know all areas of memory that are impacted by the
- * failure. */
-- MEMORY_ERROR_UE,
-+ MEMORY_ERROR_UE = 1,
-
- /** Firmware has predictively requested service on a part in the memory
- * subsystem. The partitions may not have been affected, but it is
- * advised to migrate off of the address range as soon as possible to
- * avoid potential partition outages. */
-- MEMORY_ERROR_PREDICTIVE,
-+ MEMORY_ERROR_PREDICTIVE = 2,
- };
-
- /**
-@@ -130,6 +130,21 @@ enum MemoryError_t
- #define HBRT_RSVD_MEM__SBE_FFDC "ibm,sbe-ffdc"
-
-
-+/**
-+ * Specifiers for get_interface_capabilities
-+ */
-+
-+/* Common Features */
-+#define HBRT_CAPS_SET0_COMMON 0
-+
-+/* OPAL fixes */
-+#define HBRT_CAPS_SET1_OPAL 1
-+#define HBRT_CAPS_OPAL_HAS_XSCOM_RC (1ul << 0)
-+
-+/* PHYP fixes */
-+#define HBRT_CAPS_SET2_PHYP 2
-+
-+
- /** @typedef hostInterfaces_t
- * @brief Interfaces provided by the underlying environment (ex. Sapphire).
- *
-@@ -412,6 +427,40 @@ typedef struct hostInterfaces
- enum MemoryError_t i_errorType );
-
- /**
-+ * @brief Query the HBRT host for a list of fixes/features
-+ *
-+ * There are times when workarounds need to be put into place to handle
-+ * issues with the hosting layer (e.g. opal-prd) while fixes are not yet
-+ * released. This is especially true because of the disconnected release
-+ * streams for the firmware and the hosting environment.
-+ *
-+ * @param i_set Indicates which set of fixes/features we're checking
-+ * see HBRT_CAPS_SET...
-+ *
-+ * @return a bitmask containing the relevant flags for the current
-+ * implementation, see HBRT_CAPS_FLAGS_...
-+ */
-+ uint64_t (*get_interface_capabilities)( uint64_t i_set );
-+
-+ /**
-+ * @brief Map a physical address space into usable memory
-+ * @note Repeated calls to map the same memory should not return an error
-+ * @param[in] i_physMem Physical address
-+ * @param[in] i_bytes Number of bytes to map in
-+ * @return NULL on error, else pointer to usable memory
-+ * @platform FSP, OpenPOWER
-+ */
-+ void* (*map_phys_mem)(uint64_t i_physMem, size_t i_bytes);
-+
-+ /**
-+ * @brief Unmap a physical address space from usable memory
-+ * @param[in] i_ptr Previously mapped pointer
-+ * @return 0 on success, else RC
-+ * @platform FSP, OpenPOWER
-+ */
-+ int (*unmap_phys_mem)(void* i_ptr);
-+
-+ /**
- * @brief Modify the SCOM restore section of the HCODE image with the
- * given register data
- *
-@@ -441,22 +490,27 @@ typedef struct hostInterfaces
- uint64_t i_scomData );
-
- /**
-- * @brief Map a physical address space into usable memory
-- * @note Repeated calls to map the same memory should not return an error
-- * @param[in] i_physMem Physical address
-- * @param[in] i_bytes Number of bytes to map in
-- * @return NULL on error, else pointer to usable memory
-- * @platform FSP, OpenPOWER
-- */
-- void* (*map_phys_mem)(uint64_t i_physMem, size_t i_bytes);
--
-- /**
-- * @brief Unmap a physical address space from usable memory
-- * @param[in] i_ptr Previously mapped pointer
-- * @return 0 on success, else RC
-- * @platform FSP, OpenPOWER
-+ * @brief Send a request to firmware, and receive a response
-+ * @details
-+ * req_len bytes are sent to runtime firmware, and resp_len
-+ * bytes received in response.
-+ *
-+ * Both req and resp are allocated by the caller. If resp_len
-+ * is not large enough to contain the full response, an error
-+ * is returned.
-+ *
-+ * @param[in] i_reqLen length of request data
-+ * @param[in] i_req request data
-+ * @param[inout] o_respLen in: size of request data buffer
-+ * out: length of request data
-+ * @param[in] o_resp response data
-+ * @return 0 on success, else RC
-+ * @platform FSP, OpenPOWER
- */
-- int (*unmap_phys_mem)(void* i_ptr);
-+ int (*firmware_request)( uint64_t i_reqLen,
-+ void *i_req,
-+ uint64_t* o_respLen,
-+ void *o_resp );
-
- // Reserve some space for future growth.
- // do NOT ever change this number, even if you add functions.
-@@ -475,7 +529,7 @@ typedef struct hostInterfaces
- // allocated with sufficient space and populated with NULL function
- // pointers. 32 is big enough that we should not likely add that many
- // functions from either direction in between any two levels of support.
-- void (*reserved[32])(void);
-+ void (*reserved[27])(void);
-
- } hostInterfaces_t;
-
-@@ -502,44 +556,11 @@ typedef struct runtimeInterfaces
- const uint32_t * (*get_lid_list)(size_t * o_num);
-
- /**
-- * @brief Load OCC/HCODE images into mainstore
-- *
-- * @param[in] i_chip the HW chip id (XSCOM chip ID)
-- * @param[in] i_homer_addr the physical mainstore address of the
-- * start of the HOMER image,
-- * @param[in] i_occ_common_addr the physical mainstore address of the
-- * OCC common area, 8MB, used for
-- * OCC-OCC communication (1 per node)
-- * @param[in] i_mode selects initial load vs concurrent reloads
-- * HBRT_PM_LOAD:
-- * load all lids/sections from scratch,
-- * preserve nothing
-- * HBRT_PM_RELOAD:
-- * reload all lids/sections,
-- * but preserve runtime updates
-- * @return 0 on success else return code
-- * @platform FSP, OpenPOWER
-- */
-- int (*load_pm_complex)( uint64_t i_chip,
-- uint64_t i_homer_addr,
-- uint64_t i_occ_common_addr,
-- uint32_t i_mode );
--
-- /**
-- * @brief Start OCC/HCODE on the specified chip
-- * @param[in] i_chip the HW chip id
-- * @return 0 on success else return code
-- * @platform FSP, OpenPOWER
-- */
-- int (*start_pm_complex)( uint64_t i_chip );
--
-- /**
-- * @brief Reset OCC/HCODE on the specified chip
-- * @param[in] i_chip the HW chip id
-- * @return 0 on success else return code
-- * @platform FSP, OpenPOWER
-+ * Space allocated for deprecated P8 interfaces
- */
-- int (*reset_pm_complex)( uint64_t i_chip );
-+ const uint32_t * (*occ_load__deprecated)(size_t * o_num);
-+ const uint32_t * (*occ_start__deprecated)(size_t * o_num);
-+ const uint32_t * (*occ_stop__deprecated)(size_t * o_num);
-
- /**
- * @brief Notify HTMGT that an OCC has an error to report
-@@ -629,20 +650,20 @@ typedef struct runtimeInterfaces
- /**
- * @brief Send a pass-through command to HTMGT
- *
-- * @details This is a blocking call that will send a command
-- * to HTMGT.
-- * @note If o_rspLength is returned with a non-zero value,
-- * the data at the o_rspData should be dumped to
-- * stdout in a hex dump format.
-- * @note The maximum response data returned will be 4096 bytes
-+ * @details This is a blocking call that will send a command
-+ * to HTMGT.
-+ * @note If o_rspLength is returned with a non-zero value,
-+ * the data at the o_rspData should be dumped to
-+ * stdout in a hex dump format.
-+ * @note The maximum response data returned will be 4096 bytes
- *
- * @param[in] i_cmdLength number of bytes in pass-thru command data
-- * @param[in] *i_cmdData pointer to pass-thru command data
-+ * @param[in] *i_cmdData pointer to pass-thru command data
- * @param[out] *o_rspLength pointer to number of bytes returned
- * in o_rspData
-- * @param[out] *o_rspData pointer to a 4096 byte buffer that will
-+ * @param[out] *o_rspData pointer to a 4096 byte buffer that will
- * contain the response data from the command
-- * @returns 0 on success, or return code if the command failed
-+ * @returns 0 on success, or return code if the command failed
- * @platform OpenPOWER
- */
- int (*mfg_htmgt_pass_thru)( uint16_t i_cmdLength,
-@@ -691,20 +712,83 @@ typedef struct runtimeInterfaces
- size_t i_hwKeyHashSize);
-
- /**
-- * @brief SBE message passing
-+ * @brief SBE message passing notification
- *
-- * @details This is a blocking call that will pass an SBE message
-- * with a pass-through command through HBRT to code that
-- * will process the command and provide a response.
-+ * @details
-+ * This is a blocking call that is used to notify HBRT there is
-+ * a SBE message available. This should be called when the Host
-+ * detects the appropriate PSU interrupt from the SBE.
- *
- * @param[in] i_procChipId Chip ID of the processor whose SBE is passing
- * the message and sent the interrupt
- *
-- * @returns 0 on success, or return code if the command failed
-+ * @return 0 on success, or return code if the command failed
- * @platform FSP, OpenPOWER
- */
- int (*sbe_message_passing)(uint32_t i_procChipId);
-
-+ /**
-+ * @brief Load OCC/HCODE images into mainstore
-+ *
-+ * @param[in] i_chip the HW chip id (XSCOM chip ID)
-+ * @param[in] i_homer_addr the physical mainstore address of the
-+ * start of the HOMER image,
-+ * @param[in] i_occ_common_addr the physical mainstore address of the
-+ * OCC common area, 8MB, used for
-+ * OCC-OCC communication (1 per node)
-+ * @param[in] i_mode selects initial load vs concurrent reloads
-+ * HBRT_PM_LOAD:
-+ * load all lids/sections from scratch,
-+ * preserve nothing
-+ * HBRT_PM_RELOAD:
-+ * reload all lids/sections,
-+ * but preserve runtime updates
-+ * @return 0 on success else return code
-+ * @platform FSP, OpenPOWER
-+ */
-+ int (*load_pm_complex)( uint64_t i_chip,
-+ uint64_t i_homer_addr,
-+ uint64_t i_occ_common_addr,
-+ uint32_t i_mode );
-+
-+ /**
-+ * @brief Start OCC/HCODE on the specified chip
-+ * @param[in] i_chip the HW chip id
-+ * @return 0 on success else return code
-+ * @platform FSP, OpenPOWER
-+ */
-+ int (*start_pm_complex)( uint64_t i_chip );
-+
-+ /**
-+ * @brief Reset OCC/HCODE on the specified chip
-+ * @param[in] i_chip the HW chip id
-+ * @return 0 on success else return code
-+ * @platform FSP, OpenPOWER
-+ */
-+ int (*reset_pm_complex)( uint64_t i_chip );
-+
-+ /**
-+ * @brief Query the IPOLL event mask supported by HBRT
-+ *
-+ * @details This call allows the wrapper application to query
-+ * the ipoll event mask to set when the HBRT instance is running. Bits
-+ * that are *set* in this bitmask represent events that will be
-+ * forwarded to the handle_attn() callback.
-+ *
-+ * @return The IPOLL event bits to enable during HBRT execution
-+ * @platform FSP, OpenPOWER
-+ */
-+ uint64_t (*get_ipoll_events)( void );
-+
-+ /**
-+ * @brief Receive an async notification from firmware
-+ * @param[in] i_len length of notification data
-+ * @param[in] i_data notification data
-+ * @platform FSP, OpenPOWER
-+ */
-+ void (*firmware_notify)( uint64_t len,
-+ void *data );
-+
- // Reserve some space for future growth.
- // do NOT ever change this number, even if you add functions.
- //
-@@ -722,7 +806,7 @@ typedef struct runtimeInterfaces
- // allocated with sufficient space and populated with NULL function
- // pointers. 32 is big enough that we should not likely add that many
- // functions from either direction in between any two levels of support.
-- void (*reserved[32])(void);
-+ void (*reserved[22])(void);
-
- } runtimeInterfaces_t;
-
-diff --git a/src/runtime/rt_main.C b/src/runtime/rt_main.C
-index d9a21c9..d539018 100644
---- a/src/runtime/rt_main.C
-+++ b/src/runtime/rt_main.C
-@@ -5,7 +5,7 @@
- /* */
- /* OpenPOWER HostBoot Project */
- /* */
--/* Contributors Listed Below - COPYRIGHT 2013,2016 */
-+/* Contributors Listed Below - COPYRIGHT 2013,2017 */
- /* [+] International Business Machines Corp. */
- /* */
- /* */
-@@ -70,6 +70,27 @@ extern "C"
- */
- runtimeInterfaces_t* rt_start(hostInterfaces_t*) NEVER_INLINE;
-
-+
-+/** @fn rt_version_fixup
-+ *
-+ * @brief Make any adjustments needed to handle old versions
-+ */
-+void rt_version_fixup( void )
-+{
-+ uint64_t hostver = g_hostInterfaces->interfaceVersion;
-+ if( HOSTBOOT_RUNTIME_INTERFACE_VERSION == hostver )
-+ {
-+ return; //nothing to do, we match
-+ }
-+
-+ char verstring[100];
-+ sprintf( verstring,
-+ "HRBT Ver=%X, HostVer=%X\n",
-+ HOSTBOOT_RUNTIME_INTERFACE_VERSION,
-+ hostver );
-+ (g_hostInterfaces->puts)(verstring);
-+}
-+
- /** Call C++ constructors present in this image. */
- void rt_cppBootstrap();
-
-@@ -111,6 +132,9 @@ runtimeInterfaces_t* rt_start(hostInterfaces_t* intf)
- postInitCalls_t* rtPost = getPostInitCalls();
- rtPost->callApplyTempOverrides();
-
-+ // do any version mismatch fixups
-+ rt_version_fixup();
-+
- // Return our interface pointer structure.
- return rtInterfaces;
- }
---
-1.8.2.2
-
diff --git a/openpower/package/hostboot/p9Patches/hostboot-0011-Revert-Handling-of-functional-NX-chiplet.patch b/openpower/package/hostboot/p9Patches/hostboot-0011-Revert-Handling-of-functional-NX-chiplet.patch
deleted file mode 100644
index 8d64244..0000000
--- a/openpower/package/hostboot/p9Patches/hostboot-0011-Revert-Handling-of-functional-NX-chiplet.patch
+++ /dev/null
@@ -1,240 +0,0 @@
-From 569a650085d4ea7cf87c88ec5542ff31477e8c6d Mon Sep 17 00:00:00 2001
-From: Bill Hoffa <wghoffa@us.ibm.com>
-Date: Fri, 2 Jun 2017 10:32:27 -0500
-Subject: [PATCH] Revert "Handling of functional NX chiplet"
-
-This reverts commit 392272c0247878a832473157e7d2e6023496ca99.
----
- src/include/usr/hwas/common/hwas_reasoncodes.H | 1 -
- src/usr/hwas/common/hwas.C | 51 ------------------------
- src/usr/isteps/istep10/call_host_rng_bist.C | 53 ++++++-------------------
- src/usr/isteps/istep16/call_host_secure_rng.C | 55 +++++++-------------------
- 4 files changed, 28 insertions(+), 132 deletions(-)
-
-diff --git a/src/include/usr/hwas/common/hwas_reasoncodes.H b/src/include/usr/hwas/common/hwas_reasoncodes.H
-index 1c3a789..667ac6c 100644
---- a/src/include/usr/hwas/common/hwas_reasoncodes.H
-+++ b/src/include/usr/hwas/common/hwas_reasoncodes.H
-@@ -55,7 +55,6 @@ namespace HWAS
- RC_SYSAVAIL_MISSING_CRITICAL_RESOURCE = HWAS_COMP_ID | 0x0B,
- RC_SYSAVAIL_NO_MCAS_FUNC = HWAS_COMP_ID | 0x0C,
- RC_SYSAVAIL_NO_MEMORY_FUNC_MASTER = HWAS_COMP_ID | 0x0D,
-- RC_SYSAVAIL_NO_NX_FUNC = HWAS_COMP_ID | 0x0E,
- };
- };
-
-diff --git a/src/usr/hwas/common/hwas.C b/src/usr/hwas/common/hwas.C
-index 9908ef8..79d541b 100644
---- a/src/usr/hwas/common/hwas.C
-+++ b/src/usr/hwas/common/hwas.C
-@@ -1881,57 +1881,6 @@ errlHndl_t checkMinimumHardware(const TARGETING::ConstTargetHandle_t i_nodeOrSys
- // errl is now NULL
- }
- }
--
-- // check for functional NX chiplets
-- TargetHandleList l_functionalNXChiplets;
-- getChildChiplets(l_functionalNXChiplets, pTop, TYPE_NX, true);
-- HWAS_DBG( "checkMinimumHardware: %d NX chiplets",
-- l_functionalNXChiplets.size());
--
-- if (l_functionalNXChiplets.empty())
-- {
-- HWAS_ERR( "Insufficient hardware to continue IPL (NX chiplets)");
--
-- if(o_bootable)
-- {
-- *o_bootable = false;
-- break;
-- }
-- TargetHandleList l_presentNXChiplets;
-- getChildChiplets(l_presentNXChiplets, pTop, TYPE_NX, false);
-- uint32_t nx_present = l_presentNXChiplets.size();
--
-- /*@
-- * @errortype
-- * @severity ERRL_SEV_UNRECOVERABLE
-- * @moduleid MOD_CHECK_MIN_HW
-- * @reasoncode RC_SYSAVAIL_NO_NX_FUNC
-- * @devdesc checkMinimumHardware found no
-- * functional NX chiplets
-- * @custdesc Insufficient hardware to continue IPL
-- * @userdata1[00:31] HUID of node
-- * @userdata2[00:31] number of present nonfunctional NX chiplets
-- */
-- const uint64_t userdata1 =
-- (static_cast<uint64_t>(get_huid(pTop)) << 32);
-- const uint64_t userdata2 =
-- (static_cast<uint64_t>(nx_present) << 32);
-- l_errl = hwasError(ERRL_SEV_UNRECOVERABLE,
-- MOD_CHECK_MIN_HW,
-- RC_SYSAVAIL_NO_NX_FUNC,
-- userdata1, userdata2);
--
-- // call out the procedure to find the deconfigured part.
-- hwasErrorAddProcedureCallout( l_errl,
-- EPUB_PRC_FIND_DECONFIGURED_PART,
-- SRCI_PRIORITY_HIGH );
--
-- // if we already have an error, link this one to the earlier;
-- // if not, set the common plid
-- hwasErrorUpdatePlid( l_errl, l_commonPlid );
-- errlCommit(l_errl, HWAS_COMP_ID);
-- }
--
- // ------------------------------------------------------------
- // Check for Mirrored memory -
- // If the user requests mirrored memory and we do not have it,
-diff --git a/src/usr/isteps/istep10/call_host_rng_bist.C b/src/usr/isteps/istep10/call_host_rng_bist.C
-index 68d2435..b1ccc51 100644
---- a/src/usr/isteps/istep10/call_host_rng_bist.C
-+++ b/src/usr/isteps/istep10/call_host_rng_bist.C
-@@ -42,7 +42,6 @@
-
- #include <isteps/hwpisteperror.H>
- #include <errl/errludtarget.H>
--#include <errl/errlreasoncodes.H>
-
- #include <initservice/isteps_trace.H>
- #include <initservice/initserviceif.H>
-@@ -87,49 +86,23 @@ void* call_host_rng_bist( void *io_pArgs )
- // Loop through all processors including master
- for (const auto & l_cpu_target: l_cpuTargetList)
- {
-- const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>l_fapi2_proc_target(
-+ const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>l_fapi2_proc_target(
- l_cpu_target);
-- // Check for functional NX
-- TARGETING::TargetHandleList l_nxTargetList;
-- getChildChiplets(l_nxTargetList, l_cpu_target, TYPE_NX, true);
-- if (l_nxTargetList.empty())
-- {
-- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
-- "p9_rng_init_phase1: no functional NX found for proc %.8X",
-- TARGETING::get_huid(l_cpu_target));
-- continue;
-- }
-- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
-+
-+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
- "Running p9_rng_init_phase1 HWP on processor target %.8X",
- TARGETING::get_huid(l_cpu_target) );
-
-- FAPI_INVOKE_HWP(l_err, p9_rng_init_phase1, l_fapi2_proc_target);
-- if(l_err)
-- {
-- TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
-- "ERROR: call p9_rng_init_phase1, PLID=0x%x, rc=0x%.4X",
-- l_err->plid(), l_err->reasonCode());
--
-- for (const auto l_callout : l_err->getUDSections(
-- HWPF_COMP_ID,
-- ERRORLOG::ERRL_UDT_CALLOUT))
-- {
-- if(reinterpret_cast<HWAS::callout_ud_t*>
-- (l_callout)->type == HWAS::HW_CALLOUT)
-- {
-- for (const auto & l_nxTarget: l_nxTargetList)
-- {
-- l_err->addHwCallout( l_nxTarget,
-- HWAS::SRCI_PRIORITY_HIGH,
-- HWAS::DECONFIG,
-- HWAS::GARD_NULL );
-- }
-- }
-- }
--
-- l_StepError.addErrorDetails(l_err);
-- errlCommit(l_err, HWPF_COMP_ID);
-- }
-+ FAPI_INVOKE_HWP(l_err, p9_rng_init_phase1, l_fapi2_proc_target);
-+ if(l_err)
-+ {
-+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
-+ "ERROR: call p9_rng_init_phase1, PLID=0x%x",
-+ l_err->plid());
-+ l_StepError.addErrorDetails(l_err);
-+ errlCommit(l_err, HWPF_COMP_ID);
-+ }
-+
- } // end of going through all processors
-
- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
-diff --git a/src/usr/isteps/istep16/call_host_secure_rng.C b/src/usr/isteps/istep16/call_host_secure_rng.C
-index 9ca7e0f..5a51504 100644
---- a/src/usr/isteps/istep16/call_host_secure_rng.C
-+++ b/src/usr/isteps/istep16/call_host_secure_rng.C
-@@ -45,7 +45,6 @@
-
- #include <isteps/hwpisteperror.H>
- #include <errl/errludtarget.H>
--#include <errl/errlreasoncodes.H>
-
- #include <initservice/isteps_trace.H>
- #include <initservice/initserviceif.H>
-@@ -90,47 +89,23 @@ void* call_host_secure_rng( void *io_pArgs )
- // Loop through all processors including master
- for (const auto & l_cpu_target: l_cpuTargetList)
- {
-- const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>l_fapi2_proc_target(
-+ const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>l_fapi2_proc_target(
- l_cpu_target);
-
-- // Check for functional NX
-- TARGETING::TargetHandleList l_nxTargetList;
-- getChildChiplets(l_nxTargetList, l_cpu_target, TYPE_NX, true);
-- if (l_nxTargetList.empty())
-- {
-- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
-- "Running host_secure_rng; no functional NX found for proc %.8X",
-- TARGETING::get_huid(l_cpu_target));
-- continue;
-- }
--
-- FAPI_INVOKE_HWP(l_err, p9_rng_init_phase2, l_fapi2_proc_target);
-- if(l_err)
-- {
-- TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
-- "ERROR: call p9_rng_init_phase2, PLID=0x%x, rc=0x%.4X",
-- l_err->plid(), l_err->reasonCode());
--
-- for (const auto l_callout : l_err->getUDSections(
-- HWPF_COMP_ID,
-- ERRORLOG::ERRL_UDT_CALLOUT))
-- {
-- if(reinterpret_cast<HWAS::callout_ud_t*>
-- (l_callout)->type == HWAS::HW_CALLOUT)
-- {
-- for (const auto & l_nxTarget: l_nxTargetList)
-- {
-- l_err->addHwCallout( l_nxTarget,
-- HWAS::SRCI_PRIORITY_HIGH,
-- HWAS::DECONFIG,
-- HWAS::GARD_NULL );
-- }
-- }
-- }
--
-- l_StepError.addErrorDetails(l_err);
-- errlCommit(l_err, HWPF_COMP_ID);
-- }
-+ TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
-+ "Running host_secure_rng HWP on processor target %.8X",
-+ TARGETING::get_huid(l_cpu_target) );
-+
-+ FAPI_INVOKE_HWP(l_err, p9_rng_init_phase2, l_fapi2_proc_target);
-+ if(l_err)
-+ {
-+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
-+ "ERROR: call p9_rng_init_phase2, PLID=0x%x",
-+ l_err->plid());
-+ l_StepError.addErrorDetails(l_err);
-+ errlCommit(l_err, HWPF_COMP_ID);
-+ }
-+
- } // end of going through all processors
-
- TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,
---
-1.8.2.2
-
diff --git a/openpower/package/openpower-pnor/Config.in b/openpower/package/openpower-pnor/Config.in
index 438ea95..2328a04 100644
--- a/openpower/package/openpower-pnor/Config.in
+++ b/openpower/package/openpower-pnor/Config.in
@@ -67,11 +67,13 @@
config BR2_WOFDATA_FILENAME
string "Name of wofdata original file"
+ default "wof_output"
help
String used to define name of wofdata original file
config BR2_WOFDATA_BINARY_FILENAME
string "Name of wofdata binary file"
+ default "wofdata.bin.ecc"
help
String used to define name of wofdata binary ecc'd file
diff --git a/openpower/package/skiboot/Config.in b/openpower/package/skiboot/Config.in
index 0506983..fa8a8a3 100644
--- a/openpower/package/skiboot/Config.in
+++ b/openpower/package/skiboot/Config.in
@@ -31,7 +31,7 @@
config BR2_SKIBOOT_VERSION
string
- default "skiboot-5.6.0" if BR2_SKIBOOT_LATEST_VERSION
+ default "skiboot-5.6.0-87-ge835c2fb7ce1" if BR2_SKIBOOT_LATEST_VERSION
default BR2_SKIBOOT_CUSTOM_VERSION_VALUE \
if BR2_SKIBOOT_CUSTOM_VERSION