Update firestone XML and patches needed for Firestone
diff --git a/openpower/package/firestone-xml/firestone.mk b/openpower/package/firestone-xml/firestone.mk
index aa77e03..600c285 100644
--- a/openpower/package/firestone-xml/firestone.mk
+++ b/openpower/package/firestone-xml/firestone.mk
@@ -4,7 +4,7 @@
#
################################################################################
-FIRESTONE_XML_VERSION ?= 8023db709f2ed5ee4c481fcb7eff68a30248e0ae
+FIRESTONE_XML_VERSION ?= 3383b31643c225f7bcecc8ce08dcbb6803f3e058
FIRESTONE_XML_SITE ?= $(call github,open-power,firestone-xml,$(FIRESTONE_XML_VERSION))
FIRESTONE_XML_LICENSE = Apache-2.0
diff --git a/openpower/package/hostboot/hostboot-0019-Fix-TX_MSBSWAP-attribute-for-Firestone.patch b/openpower/package/hostboot/hostboot-0019-Fix-TX_MSBSWAP-attribute-for-Firestone.patch
new file mode 100644
index 0000000..fbdfbda
--- /dev/null
+++ b/openpower/package/hostboot/hostboot-0019-Fix-TX_MSBSWAP-attribute-for-Firestone.patch
@@ -0,0 +1,102 @@
+From 42ad0709dfe4c053498660fe9bc884126082c2d6 Mon Sep 17 00:00:00 2001
+From: Norman James <njames@us.ibm.com>
+Date: Tue, 17 Mar 2015 23:49:24 -0500
+Subject: [PATCH] Serverwiz2: TX_MSBSWAP and PEER_PATH fix
+
+Change-Id: I733f9c09837482469365b4de533f3560d049d0a6
+---
+ src/usr/targeting/common/Targets.pm | 7 +++++++
+ src/usr/targeting/common/processMrw.pl | 29 ++++++++++++++++-------------
+ 2 files changed, 23 insertions(+), 13 deletions(-)
+
+diff --git a/src/usr/targeting/common/Targets.pm b/src/usr/targeting/common/Targets.pm
+index 29f6bcb..ea5ffde 100644
+--- a/src/usr/targeting/common/Targets.pm
++++ b/src/usr/targeting/common/Targets.pm
+@@ -338,8 +338,15 @@ sub buildHierarchy
+ {
+ foreach my $b (@{ $target_xml->{bus} })
+ {
++ if (ref($b->{dest_path}) eq "HASH") {
++ $b->{dest_path}="";
++ }
++ if (ref($b->{source_path}) eq "HASH") {
++ $b->{source_path}="";
++ }
+ my $source_target =
+ $key . "/" . $b->{source_path} . $b->{source_target};
++
+ my $dest_target = $key . "/" . $b->{dest_path} . $b->{dest_target};
+ my $bus_type = $b->{bus_type};
+ push(
+diff --git a/src/usr/targeting/common/processMrw.pl b/src/usr/targeting/common/processMrw.pl
+index 691cbcb..7133534 100644
+--- a/src/usr/targeting/common/processMrw.pl
++++ b/src/usr/targeting/common/processMrw.pl
+@@ -667,11 +667,15 @@ sub processAbus
+ my $target = shift;
+
+ my $found_abus = 0;
+- $targetObj->setAttribute($target, "PEER_PATH","physical:na");
+- $targetObj->setAttribute($target, "EI_BUS_TX_LANE_INVERT","0");
+- $targetObj->setAttribute($target, "EI_BUS_TX_MSBSWAP","0");
+- # $targetObj->setAttribute($target, "PEER_TARGET","");
+-
++ if ($targetObj->isBadAttribute($target, "PEER_PATH"))
++ {
++ $targetObj->setAttribute($target, "PEER_PATH","physical:na");
++ }
++ $targetObj->setAttribute($target, "EI_BUS_TX_LANE_INVERT","0");
++ if ($targetObj->isBadAttribute($target, "EI_BUS_TX_MSBSWAP"))
++ {
++ $targetObj->setAttribute($target, "EI_BUS_TX_MSBSWAP","0");
++ }
+ my $abus_child_conn = $targetObj->getFirstConnectionDestination($target);
+ if ($abus_child_conn ne "")
+ {
+@@ -787,12 +791,12 @@ sub processPcie
+
+ #iop_swap{iop}{clk swap}{clk group reversal}
+ $iop_swap{0}{0}{'00'}=$t[0];
+- $iop_swap{0}{0}{'01'}=$t[1];
+- $iop_swap{0}{0}{'10'}=$t[2];
++ $iop_swap{0}{0}{'10'}=$t[1];
++ $iop_swap{0}{0}{'01'}=$t[2];
+ $iop_swap{0}{0}{'11'}=$t[3];
+ $iop_swap{0}{1}{'00'}=$t[4];
+- $iop_swap{0}{1}{'01'}=$t[5];
+- $iop_swap{0}{1}{'10'}=$t[6];
++ $iop_swap{0}{1}{'10'}=$t[5];
++ $iop_swap{0}{1}{'01'}=$t[6];
+ $iop_swap{0}{1}{'11'}=$t[7];
+
+ $iop_swap{1}{0}{'00'}=$t[8];
+@@ -800,8 +804,8 @@ sub processPcie
+ $iop_swap{1}{0}{'10'}=$t[10];
+ $iop_swap{1}{0}{'11'}=$t[11];
+ $iop_swap{1}{1}{'00'}=$t[12];
+- $iop_swap{1}{1}{'01'}=$t[13];
+- $iop_swap{1}{1}{'10'}=$t[14];
++ $iop_swap{1}{1}{'10'}=$t[13];
++ $iop_swap{1}{1}{'01'}=$t[14];
+ $iop_swap{1}{1}{'11'}=$t[15];
+
+ my @lane_eq;
+@@ -958,13 +962,12 @@ sub processMembufVpdAssociation
+ {
+ my $targetObj = shift;
+ my $target = shift;
+-
+ my $vpds=$targetObj->findConnections($target,"I2C","VPD");
+ if ($vpds ne "" ) {
+ my $vpd = $vpds->{CONN}->[0];
+-
+ my $membuf_assocs=$targetObj->findConnections($vpd->{DEST_PARENT},
+ "LOGICAL_ASSOCIATION","MEMBUF");
++
+ if ($membuf_assocs ne "") {
+ foreach my $membuf_assoc (@{$membuf_assocs->{CONN}}) {
+ my $membuf_target = $membuf_assoc->{DEST_PARENT};
+--
+1.8.2.2
+
diff --git a/openpower/package/hostboot/hostboot-0020-Move-slave-sbe-start-before-proc-cen-ref-clk-enable.patch b/openpower/package/hostboot/hostboot-0020-Move-slave-sbe-start-before-proc-cen-ref-clk-enable.patch
new file mode 100644
index 0000000..06e4730
--- /dev/null
+++ b/openpower/package/hostboot/hostboot-0020-Move-slave-sbe-start-before-proc-cen-ref-clk-enable.patch
@@ -0,0 +1,60 @@
+From d6882c71233b9c4b2fb801c4f3e588b47c2c73bc Mon Sep 17 00:00:00 2001
+From: Dan Crowell <dcrowell@us.ibm.com>
+Date: Wed, 1 Apr 2015 11:07:42 -0500
+Subject: [PATCH] Move slave sbe start before proc_cen_ref_clk_enable
+
+The proc_cen_ref_clk_enable step contains scoms to the processor
+that do not work if the proc hasn't run through its sbe code yet.
+
+Change-Id: I7665992a01bd66a37cd5e79aa2bb2142a304a8f4
+---
+ src/include/usr/isteps/istep06list.H | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/src/include/usr/isteps/istep06list.H b/src/include/usr/isteps/istep06list.H
+index 6adb784..6a26b2a 100644
+--- a/src/include/usr/isteps/istep06list.H
++++ b/src/include/usr/isteps/istep06list.H
+@@ -68,12 +68,12 @@ namespace INITSERVICE
+ * : Clear deconfigured states
+ * 06.8 proc_revert_sbe_mcs_setup
+ * : Clean up MCS extent regs
+- * 06.9 proc_cen_ref_clk_enable
+- * : Setup centaur ref clocks
+- * 06.10 host_slave_sbe_config
++ * 06.10 host_slave_sbe_config
+ * 06.11 host_sbe_start
+ * 06.12 proc_check_slave_sbe_seeprom_complete
+ * : Check Slave SBE Complete
++ * 06.9 proc_cen_ref_clk_enable
++ * : Setup centaur ref clocks
+ * 06.13 proc_xmit_sbe
+ * : vSBE Init of Slave Chips
+ *
+@@ -127,11 +127,6 @@ const TaskInfo g_istep06[] = {
+ { START_FN, EXT_IMAGE, NORMAL_IPL_OP, false }
+ },
+ {
+- ISTEPNAME(06,09,"proc_cen_ref_clk_enable"),
+- SLAVE_SBE::call_proc_cen_ref_clk_enable,
+- { START_FN, EXT_IMAGE, NORMAL_IPL_OP, false }
+- },
+- {
+ ISTEPNAME(06,10,"host_slave_sbe_config"),
+ SLAVE_SBE::call_host_slave_sbe_config,
+ { START_FN, EXT_IMAGE, NORMAL_IPL_OP, false }
+@@ -147,6 +142,11 @@ const TaskInfo g_istep06[] = {
+ { START_FN, EXT_IMAGE, NORMAL_IPL_OP | MPIPL_OP, false }
+ },
+ {
++ ISTEPNAME(06,09,"proc_cen_ref_clk_enable"),
++ SLAVE_SBE::call_proc_cen_ref_clk_enable,
++ { START_FN, EXT_IMAGE, NORMAL_IPL_OP, false }
++ },
++ {
+ ISTEPNAME(06,13,"proc_xmit_sbe"),
+ SLAVE_SBE::call_proc_xmit_sbe,
+ { START_FN, EXT_IMAGE, NORMAL_IPL_OP, false }
+--
+1.8.2.2
+