Update hostboot commit
diff --git a/openpower/package/hostboot/hostboot-0003-Revert-redundent-copy-of-hb-code-in-pnor.patch b/openpower/package/hostboot/hostboot-0003-Revert-redundent-copy-of-hb-code-in-pnor.patch
index 0fb587f..054840e 100644
--- a/openpower/package/hostboot/hostboot-0003-Revert-redundent-copy-of-hb-code-in-pnor.patch
+++ b/openpower/package/hostboot/hostboot-0003-Revert-redundent-copy-of-hb-code-in-pnor.patch
@@ -1,7 +1,290 @@
-From 5adea56942b770c02118e322e417f015415421f9 Mon Sep 17 00:00:00 2001
+From 1e017616432b8eb72f9b48080aab0b88d7f2241e Mon Sep 17 00:00:00 2001
From: Matt Ploetz <maploetz@us.ibm.com>
-Date: Mon, 16 Feb 2015 14:50:05 -0600
-Subject: [PATCH 1/3] Revert "adding toc offsets to defaultPnorLayout for hwsv
+Date: Tue, 17 Feb 2015 14:02:13 -0600
+Subject: [PATCH 1/6] Revert "Skipping over readTOC if hostInterface for
+ pnor_read/write doesn't exist"
+
+This reverts commit 7c5d303237f2bec25b7072ec3119d6d4fef875fc.
+---
+ src/usr/pnor/runtime/rt_pnor.C | 50 ++++++++++++++-----------------
+ src/usr/util/runtime/test/testlidmgr_rt.H | 7 ++---
+ 2 files changed, 26 insertions(+), 31 deletions(-)
+
+diff --git a/src/usr/pnor/runtime/rt_pnor.C b/src/usr/pnor/runtime/rt_pnor.C
+index f616e98..c61aa1d 100644
+--- a/src/usr/pnor/runtime/rt_pnor.C
++++ b/src/usr/pnor/runtime/rt_pnor.C
+@@ -588,35 +588,31 @@ errlHndl_t RtPnor::readTOC ()
+ break;
+ }
+
+- if (g_hostInterfaces && g_hostInterfaces->pnor_read)
++ // @TODO RTC:120733
++ // RT code needs a way to get the active side tocs vs just defaulting
++ // to SIDE_A
++ l_err = readFromDevice (l_procId, PNOR::TOC, PNOR::SIDE_A_TOC_0_OFFSET,
++ PAGESIZE,false,toc0Buffer);
++ if (l_err)
+ {
+- //@TODO RTC:120733
+- //RT code needs a way to get the active side tocs vs just defaulting
+- //to SIDE_A
+- l_err = readFromDevice(l_procId,PNOR::TOC,PNOR::SIDE_A_TOC_0_OFFSET,
+- PAGESIZE,false,toc0Buffer);
+- if (l_err)
+- {
+- TRACFCOMP(g_trac_pnor,"RtPnor::readTOC:readFromDevice failed"
+- " for TOC0");
+- break;
+- }
+-
+- l_err = readFromDevice(l_procId,PNOR::TOC,PNOR::SIDE_A_TOC_1_OFFSET,
+- PAGESIZE, false,toc1Buffer);
+- if (l_err)
+- {
+- TRACFCOMP(g_trac_pnor, "RtPnor::readTOC:readFromDevice failed"
+- " for TOC1");
+- break;
+- }
++ TRACFCOMP(g_trac_pnor,"RtPnor::readTOC:readFromDevice failed"
++ " for TOC0");
++ break;
++ }
++ l_err = readFromDevice (l_procId, PNOR::TOC, PNOR::SIDE_A_TOC_1_OFFSET,
++ PAGESIZE, false,toc1Buffer);
++ if (l_err)
++ {
++ TRACFCOMP(g_trac_pnor, "RtPnor::readTOC:readFromDevice failed"
++ " for TOC1");
++ break;
++ }
+
+- l_err = PNOR::parseTOC(toc0Buffer,toc1Buffer,iv_TOC_used,iv_TOC,0);
+- if (l_err)
+- {
+- TRACFCOMP(g_trac_pnor, "RtPnor::readTOC: parseTOC failed");
+- break;
+- }
++ l_err = PNOR::parseTOC(toc0Buffer, toc1Buffer, iv_TOC_used, iv_TOC, 0);
++ if (l_err)
++ {
++ TRACFCOMP(g_trac_pnor, "RtPnor::readTOC: parseTOC failed");
++ break;
+ }
+ } while (0);
+
+diff --git a/src/usr/util/runtime/test/testlidmgr_rt.H b/src/usr/util/runtime/test/testlidmgr_rt.H
+index d869e3c..4514684 100644
+--- a/src/usr/util/runtime/test/testlidmgr_rt.H
++++ b/src/usr/util/runtime/test/testlidmgr_rt.H
+@@ -26,7 +26,6 @@
+ #include <cxxtest/TestSuite.H>
+ #include <errl/errlmanager.H>
+ #include <utilbase.H>
+-#include <config.h>
+
+ class LidMgrRtTest : public CxxTest::TestSuite
+ {
+@@ -65,11 +64,11 @@ class LidMgrRtTest : public CxxTest::TestSuite
+
+ PNOR::SectionInfo_t l_lidPnorInfo;
+ l_errl = PNOR::getSectionInfo(PNOR::TEST, l_lidPnorInfo);
++ // Section only present in openPOWER systems
+ if (l_errl)
+ {
+- errlCommit(l_errl,UTIL_COMP_ID);
+- TS_FAIL("testLidInPnor: Error getting lidId=0x%.8x",
+- Util::TEST_LIDID);
++ delete l_errl;
++ l_errl = NULL;
+ break;
+ }
+
+--
+1.8.2.2
+
+
+From 2eaec22c342cf6dc93c6ae4e90bf4c0dfb5607c8 Mon Sep 17 00:00:00 2001
+From: Matt Ploetz <maploetz@us.ibm.com>
+Date: Tue, 17 Feb 2015 14:02:24 -0600
+Subject: [PATCH 2/6] Revert "Targeting: Generate VERSION page for binaries."
+
+This reverts commit 34c58e19162834ff5bb8d4ffb9975b50d5a0770a.
+---
+ src/build/buildpnor/defaultPnorLayout.xml | 1 -
+ src/usr/targeting/common/xmltohb/xmltohb.pl | 59 +----------------------------
+ src/usr/targeting/xmltohb/makefile | 5 +--
+ 3 files changed, 4 insertions(+), 61 deletions(-)
+
+diff --git a/src/build/buildpnor/defaultPnorLayout.xml b/src/build/buildpnor/defaultPnorLayout.xml
+index 18c309d..d5d5d25 100644
+--- a/src/build/buildpnor/defaultPnorLayout.xml
++++ b/src/build/buildpnor/defaultPnorLayout.xml
+@@ -97,7 +97,6 @@ Layout Description
+ <eyeCatch>HBD</eyeCatch>
+ <physicalOffset>0x5D000</physicalOffset>
+ <physicalRegionSize>0x120000</physicalRegionSize>
+- <sha512Version/>
+ <side>sideless</side>
+ <ecc/>
+ </section>
+diff --git a/src/usr/targeting/common/xmltohb/xmltohb.pl b/src/usr/targeting/common/xmltohb/xmltohb.pl
+index d02c1a7..a658c74 100755
+--- a/src/usr/targeting/common/xmltohb/xmltohb.pl
++++ b/src/usr/targeting/common/xmltohb/xmltohb.pl
+@@ -74,7 +74,6 @@ my $cfgShortEnums = 0;
+ my $cfgBigEndian = 1;
+ my $cfgIncludeFspAttributes = 0;
+ my $CfgSMAttrFile = "";
+-my $cfgAddVersionPage = 0;
+
+ GetOptions("hb-xml-file:s" => \$cfgHbXmlFile,
+ "src-output-dir:s" => \$cfgSrcOutputDir,
+@@ -86,7 +85,6 @@ GetOptions("hb-xml-file:s" => \$cfgHbXmlFile,
+ "big-endian!" => \$cfgBigEndian,
+ "smattr-output-file:s" => \$CfgSMAttrFile,
+ "include-fsp-attributes!" => \$cfgIncludeFspAttributes,
+- "version-page!" => \$cfgAddVersionPage,
+ "help" => \$cfgHelp,
+ "man" => \$cfgMan,
+ "verbose" => \$cfgVerbose ) || pod2usage(-verbose => 0);
+@@ -115,7 +113,6 @@ if($cfgVerbose)
+ print STDOUT "Short enums = $cfgShortEnums\n";
+ print STDOUT "Big endian = $cfgBigEndian\n";
+ print STDOUT "include-fsp-attributes = $cfgIncludeFspAttributes\n",
+- print STDOUT "version-page = $cfgAddVersionPage\n",
+ }
+
+ ################################################################################
+@@ -337,21 +334,9 @@ use constant SECTION => 3;
+ use constant TARGET => 4;
+ use constant ATTRNAME => 5;
+ my @attrDataforSM = ();
+-
+-#Flag which indicates if the script needs to add the 4096 bytes of version
+-#checksum as first page in the binary file generated.
+-my $addRO_Section_VerPage = 0;
+ if( !($cfgImgOutputDir =~ "none") )
+ {
+- #Version page will be added only if the script is called in with the flag
+- #--version-flag
+- if ($cfgAddVersionPage)
+- {
+- $addRO_Section_VerPage = 1;
+- }
+- #Pass the $addRO_Section_VerPage into the sub rotuine
+- my $Data = generateTargetingImage($cfgVmmConstsFile,$attributes,\%Target_t,
+- $addRO_Section_VerPage);
++ my $Data = generateTargetingImage($cfgVmmConstsFile,$attributes,\%Target_t);
+
+ open(PNOR_TARGETING_FILE,">$cfgImgOutputDir".$cfgImgOutputFile)
+ or fatal ("Targeting image file: \"$cfgImgOutputDir"
+@@ -4973,7 +4958,7 @@ sub serializeAssociations
+ ################################################################################
+
+ sub generateTargetingImage {
+- my($vmmConstsFile, $attributes, $Target_t,$addRO_Section_VerPage) = @_;
++ my($vmmConstsFile, $attributes, $Target_t) = @_;
+
+ # 128 MB virtual memory offset between sections
+ my $vmmSectionOffset = 128 * 1024 * 1024; # 128MB
+@@ -4998,12 +4983,6 @@ sub generateTargetingImage {
+ my $headerSize = 256;
+ my $offset = $headerSize;
+
+-
+- #If the file to be created is the HB targeting binary , then it will contain
+- #first page (4096 bytes) as the read-only data checksum. Need to adjust the
+- #read-only section offset.
+- my $versionSectionSize = 4096;
+-
+ # Reserve space for the pointer to the # of targets, update later;
+ my $numTargetsPointer = 0;
+ my $numTargetsPointerBinData = pack8byte($numTargetsPointer);
+@@ -5768,15 +5747,6 @@ sub generateTargetingImage {
+ my $blockSize = 4*1024;
+
+ my %sectionHoH = ();
+-
+- my $roOffset = 0;
+- if ($addRO_Section_VerPage == 1)
+- {
+- #First section to start after 4096 bytes
+- #as RO version data occupies first page in the binary file
+- $roOffset = $versionSectionSize;
+- }
+-
+ $sectionHoH{ pnorRo }{ offset } = 0;
+ $sectionHoH{ pnorRo }{ type } = 0;
+ $sectionHoH{ pnorRo }{ size } = sizeBlockAligned($offset,$blockSize,1);
+@@ -5897,24 +5867,6 @@ sub generateTargetingImage {
+ }
+
+ my $outFile;
+-
+- #HB Targeting binary file will contain <Version Page>+<Targeting Header>+
+- #<Section data>...
+- if ($addRO_Section_VerPage == 1)
+- {
+- #Generate the MD5 checksum value for the read-only data and update the
+- #content of the version section
+- my $versionHeader = "VERSION";
+- $versionHeader .= md5_hex($roAttrBinData);
+-
+- $outFile .= $versionHeader;
+- my $versionHeaderPadSize =
+- (sizeBlockAligned ((length $versionHeader),$versionSectionSize,1)
+- - (length $versionHeader));
+- $outFile .= pack ("@".$versionHeaderPadSize);
+- }
+-
+- #Append the 256 bytes header data
+ $outFile .= $headerBinData;
+ my $padSize = sizeBlockAligned((length $headerBinData),$headerSize,1)
+ - (length $headerBinData);
+@@ -6103,13 +6055,6 @@ generated code.
+ Omits FSP specific attributes and targets from the generated binaries and
+ generated code. This is the default behavior.
+
+-=item B<--version-page>
+-Adds 4096 bytes of version page as first page in the generated binaries.
+-
+-=item B<--no-version-page>
+-Does not add 4096 bytes of version page as first page in the generated
+-binaries . This is the default behavior.
+-
+ =item B<--verbose>
+
+ Prints out some internal workings
+diff --git a/src/usr/targeting/xmltohb/makefile b/src/usr/targeting/xmltohb/makefile
+index eb0b05a..6d1fff3 100644
+--- a/src/usr/targeting/xmltohb/makefile
++++ b/src/usr/targeting/xmltohb/makefile
+@@ -5,7 +5,7 @@
+ #
+ # OpenPOWER HostBoot Project
+ #
+-# Contributors Listed Below - COPYRIGHT 2011,2015
++# Contributors Listed Below - COPYRIGHT 2011,2014
+ # [+] International Business Machines Corp.
+ #
+ #
+@@ -154,6 +154,5 @@ ${GENDIR}/%_targeting.bin: ${XMLTOHB_COMPILER_SCRIPT} ${GENDIR}/%.hb.xml \
+ $(addprefix --fapi-attributes-xml-file=,${GENDIR}/${XMLTOHB_FAPI_XML}) \
+ --src-output-dir=none --img-output-dir=$(dir $@) \
+ --img-output-file=$(notdir $@) \
+- --vmm-consts-file=$(VMM_CONSTS_FILE) --noshort-enums \
+- --version-page
++ --vmm-consts-file=$(VMM_CONSTS_FILE) --noshort-enums
+
+--
+1.8.2.2
+
+
+From 01728c387eebddd30e1ddd1b28c31c159cd5039e Mon Sep 17 00:00:00 2001
+From: Matt Ploetz <maploetz@us.ibm.com>
+Date: Tue, 17 Feb 2015 14:02:36 -0600
+Subject: [PATCH 3/6] Revert "adding toc offsets to defaultPnorLayout for hwsv
team"
This reverts commit 6990adda0f2996cc7baacba9f485c7b5a415904c.
@@ -38,10 +321,10 @@
1.8.2.2
-From d277e6fce112af0088d2179a07482b71cc3f083e Mon Sep 17 00:00:00 2001
+From db81af80e8d4efccfe9de9fe9e01972ff4689ef5 Mon Sep 17 00:00:00 2001
From: Matt Ploetz <maploetz@us.ibm.com>
-Date: Mon, 16 Feb 2015 14:50:17 -0600
-Subject: [PATCH 2/3] Revert "Created 2-sided and golden-side pnor layouts"
+Date: Tue, 17 Feb 2015 14:03:03 -0600
+Subject: [PATCH 4/6] Revert "Created 2-sided and golden-side pnor layouts"
This reverts commit e83759d6aa90999933318155772b50a8af679ec6.
---
@@ -670,27 +953,312 @@
1.8.2.2
-From fc5492346de6fdc8e2f58e8ec58881de6aae5510 Mon Sep 17 00:00:00 2001
+From 65fbfe1c2b67b9e8519220823b82a0ff244ba123 Mon Sep 17 00:00:00 2001
From: Matt Ploetz <maploetz@us.ibm.com>
-Date: Mon, 16 Feb 2015 14:58:48 -0600
-Subject: [PATCH 3/3] Revert "Support for Redundant Copy of HB code in PNOR"
+Date: Tue, 17 Feb 2015 14:10:03 -0600
+Subject: [PATCH 5/6] Revert "Initial Support of SBE_UPDATE_INDEPENDENT Mode"
+
+This reverts commit 002c4beefb54d288eee8faf4d9aa2b08b137aed3.
+---
+ src/usr/sbe/HBconfig | 31 ++++++------
+ src/usr/sbe/sbe_update.C | 126 +++++++++--------------------------------------
+ 2 files changed, 36 insertions(+), 121 deletions(-)
+
+diff --git a/src/usr/sbe/HBconfig b/src/usr/sbe/HBconfig
+index 952baf8..7244b31 100644
+--- a/src/usr/sbe/HBconfig
++++ b/src/usr/sbe/HBconfig
+@@ -1,30 +1,27 @@
+ config SBE_UPDATE_SEQUENTIAL
+- default y if !SBE_UPDATE_SIMULTANEOUS && !SBE_UPDATE_INDEPENDENT
+- depends on !SBE_UPDATE_SIMULTANEOUS && !SBE_UPDATE_INDEPENDENT
++ default y if !SBE_UPDATE_SIMULTANEOUS && !SBE_UPDATE_GOLDEN
++ depends on !SBE_UPDATE_SIMULTANEOUS && !SBE_UPDATE_GOLDEN
+ help
+- If an update is necessary, only 1 SBE SEEPROM per processor will be
+- updated on each IPL. If a 2nd SBE SEEPROM needs to be updated, a re-IPL
+- will be requested. The end result is that both SBE SEEPROMs will
+- contain the same code.
++ If an update is necessary, only 1 SBE SEEPROM will be updated on each
++ IPL per processor. If a 2nd SBE SEEPROM needs to be updated, a re-IPL
++ will be requested.
+
+ config SBE_UPDATE_SIMULTANEOUS
+ default n
+- depends on !SBE_UPDATE_SEQUENTIAL && !SBE_UPDATE_INDEPENDENT
++ depends on !SBE_UPDATE_SEQUENTIAL && !SBE_UPDATE_GOLDEN
+ help
+- If an update is necessary, both SBE SEEPROMs on a processor will be
+- updated at the same time before a re-IPL request is issued. The end
+- result is that both SBE SEEPROMs will contain the same code.
++ If an update is necessary, both SBE SEEPROMs on a target will be updated
++ at the same time before a re-IPL request is issued.
+
+-config SBE_UPDATE_INDEPENDENT
+- default y if TWO_SIDE_SUPPORT
++config SBE_UPDATE_GOLDEN
++ default n
+ depends on !SBE_UPDATE_SEQUENTIAL && !SBE_UPDATE_SIMULTANEOUS
+ help
+- If an update is necessary, and if the "current" SBE SEEPROM of this
+- IPL is not the 'GOLDEN' SBE SEEPROM, then only the current SBE SEEPROM
+- will be updated. After the update a re-IPL request will be issued.
+- The other SBE SEEPROM, whether 'GOLDEN' or not, will not be updated.
++ If an update is necessary, only 1 SBE SEEPROM will be updated and
++ then a re-IPL request will be issued. The other SBE SEEPROM will not
++ be touched and treated as the 'Golden' SEEPROM.
+
+ config NO_SBE_UPDATES
+ default n
+ help
+- Don't update the SBE SEEPROMs at all.
++ Don't update the SBE SEEPROMs at all
+diff --git a/src/usr/sbe/sbe_update.C b/src/usr/sbe/sbe_update.C
+index a2fad1e..698d41a 100644
+--- a/src/usr/sbe/sbe_update.C
++++ b/src/usr/sbe/sbe_update.C
+@@ -354,10 +354,6 @@ namespace SBE
+ errlCommit( err, SBE_COMP_ID );
+ }
+
+-#ifdef CONFIG_BMC_IPMI
+- // @todo RTC 120734 reset system's reboot count via IPMI sensor
+-#endif
+-
+ TRACFCOMP( g_trac_sbe,
+ INFO_MRK"updateProcessorSbeSeeproms(): Calling "
+ "INITSERVICE::doShutdown() with "
+@@ -685,9 +681,6 @@ namespace SBE
+
+ do{
+
+- // @todo RTC 120734 - before customizing, ensure correct HBB address
+- // is set in the necessary attribute
+-
+ // cast OUR type of target to a FAPI type of target.
+ const fapi::Target
+ l_fapiTarg(fapi::TARGET_TYPE_PROC_CHIP,
+@@ -1942,6 +1935,7 @@ namespace SBE
+ }
+
+
++
+ /**************************************************************/
+ /* Compare SEEPROM 1 with PNOR and Customized Image CRC -- */
+ /* -- dirty or clean? */
+@@ -2145,91 +2139,25 @@ namespace SBE
+ io_sbeState.update_actions = CLEAR_ACTIONS;
+ io_sbeState.seeprom_side_to_update = EEPROM::LAST_CHIP_TYPE;
+
++ // @todo RTC 107721 - Need to handle Habanero 'golden' SEEPROM side
++
+ do{
+
+ // To be safe, we're only look at the bits defined in sbe_update.H
+ i_system_situation &= SITUATION_ALL_BITS_MASK;
+
+-#ifdef CONFIG_SBE_UPDATE_INDEPENDENT
+-
+- // The 2 SBE SEEPROMs are independent of each other
+- // Determine if PNOR is 1- or 2-sided and if there is a
+- // GOLDEN boot involved
+-
+-#ifdef CONFIG_TWO_SIDE_SUPPORT
+-
+- // @todo RTC 120734 - ask PNOR if we are in "GOLDEN" mode,
+- // which would mean that we are booting off the the GOLDEN
+- // SBE SEEPROM which corresponds to the GOLDEN side of PNOR
+-/*
+- if (true)
+- {
+- // If true, nothing to do (covered in istep 6 function)
+- l_actions = CLEAR_ACTIONS;
+-
+- TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
+- "Booting GOLDEN SBE SEEPROM in PNOR 2-sided Mode. "
+- "No updates for cur side=%d. Continue IPL. "
+- "(sit=0x%.2X, act=0x%.8X flags=0x%.2X)",
+- TARGETING::get_huid(io_sbeState.target),
+- io_sbeState.cur_seeprom_side,
+- i_system_situation, l_actions,
+- io_sbeState.mvpdSbKeyword.flags);
+- break;
+- }
+- else // proceed to update this side
+- {
+- TRACUCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
+- "NOT Booting GOLDEN SBE SEEPROM in PNOR 2-sided "
+- "mode. Checking for update on cur side=%d ",
+- TARGETING::get_huid(io_sbeState.target),
+- io_sbeState.cur_seeprom_side)
+- }
+-*/
+-#else
+-
+- // @todo RTC 120734 - check this assumption
+- // Assume that we're only checking/updating the current side
+- TRACUCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
+- "PNOR 1-sided so only check for update on cur side=%d",
+- TARGETING::get_huid(io_sbeState.target),
+- io_sbeState.cur_seeprom_side);
+-#endif
+-
+- // Check for clean vs. dirty only on cur side
+- if ( i_system_situation & SITUATION_CUR_IS_DIRTY )
+- {
+- // Update cur side and re-ipl
+- l_actions |= IPL_RESTART;
+- l_actions |= DO_UPDATE;
+- l_actions |= UPDATE_SBE;
+-
+- // Set Update side to cur
+- io_sbeState.seeprom_side_to_update =
+- ( io_sbeState.cur_seeprom_side ==
+- PNOR::SBE_SEEPROM0 )
+- ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP;
+-
+- TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
+- "cur side (%d) dirty. Update cur. Re-IPL. "
+- "(sit=0x%.2X, act=0x%.8X flags=0x%.2X)",
+- TARGETING::get_huid(io_sbeState.target),
+- io_sbeState.cur_seeprom_side,
+- i_system_situation, l_actions,
+- io_sbeState.mvpdSbKeyword.flags);
+- }
+- else
+- {
+- // Cur side clean - No Updates - Continue IPL
+- l_actions = CLEAR_ACTIONS;
++#ifdef CONFIG_SBE_UPDATE_GOLDEN
++ // @todo RTC 107721 - Need to handle Habanero 'golden' SEEPROM side
++ // For now default to no update and continue IPL
++ l_actions = CLEAR_ACTIONS;
+
+- TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
+- "cur side (%d) clean-no updates. "
+- "Continue IPL. (sit=0x%.2X, act=0x%.8X)",
+- TARGETING::get_huid(io_sbeState.target),
+- io_sbeState.cur_seeprom_side,
+- i_system_situation, l_actions);
+- }
++ TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
++ "Habanero 'GOLDEN' Seeprom Support to come. "
++ "For now no updates. cur side=%d. "
++ "Continue IPL. (sit=0x%.2X, act=0x%.8X)",
++ TARGETING::get_huid(io_sbeState.target),
++ io_sbeState.cur_seeprom_side,
++ i_system_situation, l_actions);
+
+ #elif CONFIG_SBE_UPDATE_SIMULTANEOUS
+ // Updates both SEEPROMs if either side is dirty
+@@ -2324,8 +2252,7 @@ namespace SBE
+
+ // Set Update side to alt
+ io_sbeState.seeprom_side_to_update =
+- ( io_sbeState.alt_seeprom_side ==
+- PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
+ ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
+
+ // Update MVPD PERMANENT flag: make cur=perm
+@@ -2371,8 +2298,7 @@ namespace SBE
+
+ // Set Update side to alt
+ io_sbeState.seeprom_side_to_update =
+- ( io_sbeState.alt_seeprom_side ==
+- PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
+ ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
+
+
+@@ -2432,8 +2358,7 @@ namespace SBE
+
+ // Set Update side to alt
+ io_sbeState.seeprom_side_to_update =
+- ( io_sbeState.alt_seeprom_side ==
+- PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
+ ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
+
+ // Update MVPD RE-IPL SEEPROM flag: re-IPL on ALT:
+@@ -2530,8 +2455,7 @@ namespace SBE
+
+ // Set Update side to alt
+ io_sbeState.seeprom_side_to_update =
+- ( io_sbeState.alt_seeprom_side ==
+- PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
+ ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
+
+ // Update MVPD RE-IPL SEEPROM flag: re-IPL on ALT:
+@@ -2567,8 +2491,7 @@ namespace SBE
+
+ // Set Update side to alt
+ io_sbeState.seeprom_side_to_update =
+- ( io_sbeState.alt_seeprom_side ==
+- PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
+ ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
+
+ TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
+@@ -3278,8 +3201,7 @@ namespace SBE
+
+ // Compare against 'current' Master side in case there is
+ // an issue with the other side
+- if (io_sbeStates_v[i].cur_seeprom_side ==
+- PNOR::SBE_SEEPROM0)
++ if (io_sbeStates_v[i].cur_seeprom_side == PNOR::SBE_SEEPROM0)
+ {
+ ver_ptr =
+ &(io_sbeStates_v[i].seeprom_0_ver.image_version);
+@@ -3323,9 +3245,6 @@ namespace SBE
+ // Special Master Processor checks
+ if ( i == mP )
+ {
+-// Skip Master Processor check of Both SEEPROMs being identical
+-#ifndef CONFIG_SBE_UPDATE_INDEPENDENT
+-
+ // Compare Versions of Both SEEPROMs to PNOR Version
+ // Create a Predictive Error if there's an issue
+ if ((0 != memcmp(
+@@ -3420,15 +3339,14 @@ namespace SBE
+ errlCommit( err, SBE_COMP_ID );
+
+ } // end of check
+-#endif
++
+ // Continue to avoid remaining non-Master Processor checks
+ continue;
+ }
+ else
+ {
+ // Not Master, so get 'current' version
+- if (io_sbeStates_v[i].cur_seeprom_side ==
+- PNOR::SBE_SEEPROM0)
++ if (io_sbeStates_v[i].cur_seeprom_side == PNOR::SBE_SEEPROM0)
+ {
+ ver_ptr =
+ &(io_sbeStates_v[i].seeprom_0_ver.image_version);
+--
+1.8.2.2
+
+
+From c7c2a249b32d8b3776febb6fd81b5fa6874717df Mon Sep 17 00:00:00 2001
+From: Matt Ploetz <maploetz@us.ibm.com>
+Date: Tue, 17 Feb 2015 14:10:12 -0600
+Subject: [PATCH 6/6] Revert "Support for Redundant Copy of HB code in PNOR"
This reverts commit 67c5a1ebe73f81bca1bb6608bbb8f204f0f37fa8.
-
-Conflicts:
- src/usr/sbe/sbe_update.C
-
-Change-Id: I84530811fb6204a29e879bce8065a17964df1a72
---
- src/build/buildpnor/buildpnor.pl | 588 +++++++++++-----------------
- src/build/buildpnor/defaultPnorLayout.xml | 87 ++--
- src/build/mkrules/hbfw/img/makefile | 2 +-
- src/include/usr/hwas/hwasPlatDeconfigGard.H | 15 -
+ src/build/buildpnor/buildpnor.pl | 590 +++++++++++-----------------
+ src/build/buildpnor/defaultPnorLayout.xml | 91 ++---
+ src/build/mkrules/hbfw/img/makefile | 4 +-
+ src/include/usr/hwas/hwasPlatDeconfigGard.H | 19 +-
src/include/usr/pnor/pnor_reasoncodes.H | 2 -
src/include/usr/pnor/pnorif.H | 39 +-
- src/usr/hwas/hwasPlatDeconfigGard.C | 87 +---
+ src/usr/hwas/hwasPlatDeconfigGard.C | 89 +----
src/usr/pnor/HBconfig | 5 -
- src/usr/pnor/common/ffs_hb.H | 3 +-
+ src/usr/pnor/common/ffs_hb.H | 7 +-
src/usr/pnor/makefile | 1 -
src/usr/pnor/pnor_common.C | 182 ++-------
src/usr/pnor/pnor_common.H | 19 +-
@@ -701,16 +1269,25 @@
src/usr/pnor/runtime/rt_pnor.C | 11 +-
src/usr/pnor/runtime/rt_pnor.H | 2 +-
src/usr/pnor/test/pnorrptest.H | 104 +----
- src/usr/sbe/sbe_update.C | 97 +++--
- src/usr/sbe/sbe_update.H | 34 +-
+ src/usr/sbe/sbe_update.C | 95 +++--
+ src/usr/sbe/sbe_update.H | 38 +-
src/usr/sbe/test/sbeupdatetest.H | 24 +-
- 22 files changed, 529 insertions(+), 1043 deletions(-)
+ 22 files changed, 535 insertions(+), 1057 deletions(-)
delete mode 100644 src/usr/pnor/pnorsbe.C
diff --git a/src/build/buildpnor/buildpnor.pl b/src/build/buildpnor/buildpnor.pl
-index f6df6c8..7c5bd92 100755
+index f6df6c8..51b6922 100755
--- a/src/build/buildpnor/buildpnor.pl
+++ b/src/build/buildpnor/buildpnor.pl
+@@ -6,7 +6,7 @@
+ #
+ # OpenPOWER HostBoot Project
+ #
+-# Contributors Listed Below - COPYRIGHT 2012,2015
++# Contributors Listed Below - COPYRIGHT 2012,2014
+ # [+] International Business Machines Corp.
+ #
+ #
@@ -62,20 +62,16 @@ my $g_trace = 1;
my $programName = File::Basename::basename $0;
my %pnorLayout;
@@ -1478,10 +2055,21 @@
################################################################################
diff --git a/src/build/buildpnor/defaultPnorLayout.xml b/src/build/buildpnor/defaultPnorLayout.xml
-index 249bdb4..e20439e 100644
+index 249bdb4..e34f0fe 100644
--- a/src/build/buildpnor/defaultPnorLayout.xml
+++ b/src/build/buildpnor/defaultPnorLayout.xml
-@@ -24,50 +24,48 @@
+@@ -5,9 +5,7 @@
+ <!-- -->
+ <!-- OpenPOWER HostBoot Project -->
+ <!-- -->
+-<!-- Contributors Listed Below - COPYRIGHT 2012,2015 -->
+-<!-- [+] International Business Machines Corp. -->
+-<!-- -->
++<!-- COPYRIGHT International Business Machines Corp. 2012,2014 -->
+ <!-- -->
+ <!-- Licensed under the Apache License, Version 2.0 (the "License"); -->
+ <!-- you may not use this file except in compliance with the License. -->
+@@ -24,50 +22,48 @@
<!-- IBM_PROLOG_END_TAG -->
<!--
Layout Description
@@ -1562,7 +2150,7 @@
<ecc/>
</section>
<section>
-@@ -75,7 +73,6 @@ Layout Description
+@@ -75,7 +71,6 @@ Layout Description
<eyeCatch>GUARD</eyeCatch>
<physicalOffset>0x58000</physicalOffset>
<physicalRegionSize>0x5000</physicalRegionSize>
@@ -1570,7 +2158,7 @@
<ecc/>
</section>
<section>
-@@ -83,7 +80,6 @@ Layout Description
+@@ -83,7 +78,6 @@ Layout Description
<eyeCatch>HBD</eyeCatch>
<physicalOffset>0x5D000</physicalOffset>
<physicalRegionSize>0x120000</physicalRegionSize>
@@ -1578,7 +2166,7 @@
<ecc/>
</section>
<section>
-@@ -92,7 +88,6 @@ Layout Description
+@@ -92,7 +86,6 @@ Layout Description
<!--NOTE: MUST update standalone.simics if offset changes -->
<physicalOffset>0x17D000</physicalOffset>
<physicalRegionSize>0x48000</physicalRegionSize>
@@ -1586,7 +2174,7 @@
<ecc/>
</section>
<section>
-@@ -101,7 +96,6 @@ Layout Description
+@@ -101,7 +94,6 @@ Layout Description
<!--NOTE: MUST update standalone.simics if offset changes -->
<physicalOffset>0x1C5000</physicalOffset>
<physicalRegionSize>0x90000</physicalRegionSize>
@@ -1594,7 +2182,7 @@
<ecc/>
</section>
<section>
-@@ -110,7 +104,6 @@ Layout Description
+@@ -110,7 +102,6 @@ Layout Description
<!--NOTE: MUST update standalone.simics if offset changes -->
<physicalOffset>0x255000</physicalOffset>
<physicalRegionSize>0x48000</physicalRegionSize>
@@ -1602,7 +2190,7 @@
<ecc/>
</section>
<section>
-@@ -119,7 +112,6 @@ Layout Description
+@@ -119,7 +110,6 @@ Layout Description
<physicalOffset>0x29D000</physicalOffset>
<physicalRegionSize>0x5A0000</physicalRegionSize>
<sha512Version/>
@@ -1610,7 +2198,7 @@
<ecc/>
</section>
<section>
-@@ -128,7 +120,6 @@ Layout Description
+@@ -128,7 +118,6 @@ Layout Description
<physicalOffset>0x83D000</physicalOffset>
<physicalRegionSize>0x90000</physicalRegionSize>
<sha512perEC/>
@@ -1618,7 +2206,7 @@
<ecc/>
</section>
<section>
-@@ -137,7 +128,6 @@ Layout Description
+@@ -137,7 +126,6 @@ Layout Description
<physicalOffset>0x8CD000</physicalOffset>
<physicalRegionSize>0x48000</physicalRegionSize>
<sha512perEC/>
@@ -1626,7 +2214,7 @@
<ecc/>
</section>
<section>
-@@ -146,7 +136,6 @@ Layout Description
+@@ -146,7 +134,6 @@ Layout Description
<physicalOffset>0x915000</physicalOffset>
<physicalRegionSize>0x120000</physicalRegionSize>
<sha512Version/>
@@ -1634,7 +2222,7 @@
<ecc/>
</section>
<section>
-@@ -155,7 +144,6 @@ Layout Description
+@@ -155,7 +142,6 @@ Layout Description
<physicalOffset>0xA35000</physicalOffset>
<physicalRegionSize>0x240000</physicalRegionSize>
<sha512Version/>
@@ -1642,7 +2230,7 @@
<ecc/>
</section>
<section>
-@@ -163,7 +151,6 @@ Layout Description
+@@ -163,7 +149,6 @@ Layout Description
<eyeCatch>PAYLOAD</eyeCatch>
<physicalOffset>0xC75000</physicalOffset>
<physicalRegionSize>0x1680000</physicalRegionSize>
@@ -1650,7 +2238,7 @@
<ecc/>
</section>
<section>
-@@ -172,18 +159,6 @@ Layout Description
+@@ -172,18 +157,6 @@ Layout Description
<physicalOffset>0x3590000</physicalOffset>
<physicalRegionSize>0x9000</physicalRegionSize>
<testonly/>
@@ -1669,7 +2257,7 @@
<ecc/>
</section>
<section>
-@@ -193,7 +168,6 @@ Layout Description
+@@ -193,7 +166,6 @@ Layout Description
<physicalOffset>0x3F67000</physicalOffset>
<physicalRegionSize>0x90000</physicalRegionSize>
<sha512Version/>
@@ -1677,7 +2265,7 @@
<ecc/>
</section>
<section>
-@@ -201,7 +175,6 @@ Layout Description
+@@ -201,7 +173,6 @@ Layout Description
<eyeCatch>GLOBAL</eyeCatch>
<physicalOffset>0x3FF7000</physicalOffset>
<physicalRegionSize>0x9000</physicalRegionSize>
@@ -1686,9 +2274,18 @@
</section>
</pnor>
diff --git a/src/build/mkrules/hbfw/img/makefile b/src/build/mkrules/hbfw/img/makefile
-index 925061e..8b229ad 100755
+index 925061e..c0b0900 100755
--- a/src/build/mkrules/hbfw/img/makefile
+++ b/src/build/mkrules/hbfw/img/makefile
+@@ -5,7 +5,7 @@
+ #
+ # OpenPOWER HostBoot Project
+ #
+-# Contributors Listed Below - COPYRIGHT 2012,2015
++# Contributors Listed Below - COPYRIGHT 2012,2014
+ # [+] International Business Machines Corp.
+ #
+ #
@@ -226,7 +226,7 @@ PNOR_BUILD_SCRIPT = ${buildpnor.pl:P}
#so need to use tryinclude for now.
.tryinclude <${.PATH:Ffips_pnor.mk}>
@@ -1699,10 +2296,21 @@
HBFW_OBJPATH = ${.PATH:M*obj*}
diff --git a/src/include/usr/hwas/hwasPlatDeconfigGard.H b/src/include/usr/hwas/hwasPlatDeconfigGard.H
-index c439a42..985d261 100644
+index c439a42..4b89353 100644
--- a/src/include/usr/hwas/hwasPlatDeconfigGard.H
+++ b/src/include/usr/hwas/hwasPlatDeconfigGard.H
-@@ -32,8 +32,6 @@
+@@ -5,9 +5,7 @@
+ /* */
+ /* OpenPOWER HostBoot Project */
+ /* */
+-/* Contributors Listed Below - COPYRIGHT 2012,2015 */
+-/* [+] International Business Machines Corp. */
+-/* */
++/* COPYRIGHT International Business Machines Corp. 2012,2014 */
+ /* */
+ /* Licensed under the Apache License, Version 2.0 (the "License"); */
+ /* you may not use this file except in compliance with the License. */
+@@ -32,8 +30,6 @@
#ifndef HWASPLATDECONFIGGARD_H_
#define HWASPLATDECONFIGGARD_H_
@@ -1711,7 +2319,7 @@
/**
* @brief Adapt common singleton declaration to specific platform
*
-@@ -68,19 +66,6 @@ struct HBDeconfigGard
+@@ -68,19 +64,6 @@ struct HBDeconfigGard
void *iv_pGardRecords; // Pointer to the GARD Records in PNOR
};
@@ -1837,9 +2445,18 @@
#endif
diff --git a/src/usr/hwas/hwasPlatDeconfigGard.C b/src/usr/hwas/hwasPlatDeconfigGard.C
-index 2911cf3..f163c0c 100644
+index 2911cf3..912f7d4 100644
--- a/src/usr/hwas/hwasPlatDeconfigGard.C
+++ b/src/usr/hwas/hwasPlatDeconfigGard.C
+@@ -5,7 +5,7 @@
+ /* */
+ /* OpenPOWER HostBoot Project */
+ /* */
+-/* Contributors Listed Below - COPYRIGHT 2013,2015 */
++/* Contributors Listed Below - COPYRIGHT 2013,2014 */
+ /* [+] Google Inc. */
+ /* [+] International Business Machines Corp. */
+ /* */
@@ -52,15 +52,6 @@ using namespace HWAS::COMMON;
using namespace TARGETING;
@@ -2002,10 +2619,21 @@
- help
- This is used to turn on/off two sided pnor support
diff --git a/src/usr/pnor/common/ffs_hb.H b/src/usr/pnor/common/ffs_hb.H
-index c96911b..3defcd4 100644
+index c96911b..b638021 100644
--- a/src/usr/pnor/common/ffs_hb.H
+++ b/src/usr/pnor/common/ffs_hb.H
-@@ -27,7 +27,7 @@
+@@ -5,9 +5,7 @@
+ /* */
+ /* OpenPOWER HostBoot Project */
+ /* */
+-/* Contributors Listed Below - COPYRIGHT 2012,2015 */
+-/* [+] International Business Machines Corp. */
+-/* */
++/* COPYRIGHT International Business Machines Corp. 2012,2014 */
+ /* */
+ /* Licensed under the Apache License, Version 2.0 (the "License"); */
+ /* you may not use this file except in compliance with the License. */
+@@ -27,7 +25,7 @@
/*
* FSP Destination: src/hbfw/fsp/pnor/common/ffs_hb.H
@@ -2014,7 +2642,7 @@
* NOTE: Do NOT modify this file in CMVC directly! It comes from the Hostboot
* repository and will be overwritten.
*/
-@@ -65,7 +65,6 @@ enum
+@@ -65,7 +63,6 @@ enum
/* Miscellaneous Bits : 1 byte */
FFS_MISC_PRESERVED = 0x80, /**< Preserved across code updates */
@@ -2998,10 +3626,10 @@
/**
diff --git a/src/usr/sbe/sbe_update.C b/src/usr/sbe/sbe_update.C
-index a2fad1e..f9865ca 100644
+index 698d41a..9dd9e0a 100644
--- a/src/usr/sbe/sbe_update.C
+++ b/src/usr/sbe/sbe_update.C
-@@ -1221,6 +1221,49 @@ namespace SBE
+@@ -1214,6 +1214,49 @@ namespace SBE
}
/////////////////////////////////////////////////////////////////////
@@ -3051,7 +3679,7 @@
errlHndl_t getSbeInfoState(sbeTargetState_t& io_sbeState)
{
-@@ -1315,11 +1358,11 @@ namespace SBE
+@@ -1308,11 +1351,11 @@ namespace SBE
if(SEEPROM_0_PERMANENT_VALUE ==
(io_sbeState.mvpdSbKeyword.flags & PERMANENT_FLAG_MASK))
{
@@ -3065,7 +3693,7 @@
}
-@@ -1368,21 +1411,21 @@ namespace SBE
+@@ -1361,21 +1404,21 @@ namespace SBE
/* Determine which SEEPROM System Booted On */
/***********************************************/
//Get Current (boot) Side
@@ -3093,7 +3721,7 @@
}
else
{
-@@ -2018,7 +2061,7 @@ namespace SBE
+@@ -2012,7 +2055,7 @@ namespace SBE
/* Determine what side to update */
/**************************************************************/
// Set cur and alt isDirty values
@@ -3102,16 +3730,7 @@
{
current_side_isDirty = seeprom_0_isDirty;
alt_side_isDirty = seeprom_1_isDirty;
-@@ -2207,7 +2250,7 @@ namespace SBE
- // Set Update side to cur
- io_sbeState.seeprom_side_to_update =
- ( io_sbeState.cur_seeprom_side ==
-- PNOR::SBE_SEEPROM0 )
-+ SBE_SEEPROM0 )
- ? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP;
-
- TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
-@@ -2251,14 +2294,14 @@ namespace SBE
+@@ -2179,14 +2222,14 @@ namespace SBE
io_sbeState.seeprom_side_to_update = EEPROM::SBE_PRIMARY;
// Update MVPD PERMANENT flag: make cur=perm
@@ -3128,12 +3747,12 @@
// clear bit 1
io_sbeState.mvpdSbKeyword.flags &= ~REIPL_SEEPROM_MASK
: //set bit 1
-@@ -2325,18 +2368,18 @@ namespace SBE
+@@ -2252,18 +2295,18 @@ namespace SBE
+
// Set Update side to alt
io_sbeState.seeprom_side_to_update =
- ( io_sbeState.alt_seeprom_side ==
-- PNOR::SBE_SEEPROM0 )
-+ SBE_SEEPROM0 )
+- ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == SBE_SEEPROM0 )
? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
// Update MVPD PERMANENT flag: make cur=perm
@@ -3150,12 +3769,12 @@
// clear bit 1
io_sbeState.mvpdSbKeyword.flags &= ~REIPL_SEEPROM_MASK
: //set bit 1
-@@ -2372,13 +2415,13 @@ namespace SBE
+@@ -2298,13 +2341,13 @@ namespace SBE
+
// Set Update side to alt
io_sbeState.seeprom_side_to_update =
- ( io_sbeState.alt_seeprom_side ==
-- PNOR::SBE_SEEPROM0 )
-+ SBE_SEEPROM0 )
+- ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == SBE_SEEPROM0 )
? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
@@ -3166,12 +3785,12 @@
// clear bit 0
io_sbeState.mvpdSbKeyword.flags &= ~PERMANENT_FLAG_MASK
: // set bit 0
-@@ -2433,11 +2476,11 @@ namespace SBE
+@@ -2358,11 +2401,11 @@ namespace SBE
+
// Set Update side to alt
io_sbeState.seeprom_side_to_update =
- ( io_sbeState.alt_seeprom_side ==
-- PNOR::SBE_SEEPROM0 )
-+ SBE_SEEPROM0 )
+- ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == SBE_SEEPROM0 )
? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
// Update MVPD RE-IPL SEEPROM flag: re-IPL on ALT:
@@ -3180,7 +3799,7 @@
// clear bit 1
io_sbeState.mvpdSbKeyword.flags &= ~REIPL_SEEPROM_MASK
: // set bit 1
-@@ -2448,7 +2491,7 @@ namespace SBE
+@@ -2373,7 +2416,7 @@ namespace SBE
if ( g_istep_mode )
{
// Update MVPD PERMANENT flag: make alt=perm
@@ -3189,12 +3808,12 @@
// clear bit 0
io_sbeState.mvpdSbKeyword.flags &= ~PERMANENT_FLAG_MASK
: //set bit 0
-@@ -2531,11 +2574,11 @@ namespace SBE
+@@ -2455,11 +2498,11 @@ namespace SBE
+
// Set Update side to alt
io_sbeState.seeprom_side_to_update =
- ( io_sbeState.alt_seeprom_side ==
-- PNOR::SBE_SEEPROM0 )
-+ SBE_SEEPROM0 )
+- ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == SBE_SEEPROM0 )
? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
// Update MVPD RE-IPL SEEPROM flag: re-IPL on ALT:
@@ -3203,21 +3822,21 @@
// clear bit 1
io_sbeState.mvpdSbKeyword.flags &= ~REIPL_SEEPROM_MASK
: // set bit 1
-@@ -2568,7 +2611,7 @@ namespace SBE
+@@ -2491,7 +2534,7 @@ namespace SBE
+
// Set Update side to alt
io_sbeState.seeprom_side_to_update =
- ( io_sbeState.alt_seeprom_side ==
-- PNOR::SBE_SEEPROM0 )
-+ SBE_SEEPROM0 )
+- ( io_sbeState.alt_seeprom_side == PNOR::SBE_SEEPROM0 )
++ ( io_sbeState.alt_seeprom_side == SBE_SEEPROM0 )
? EEPROM::SBE_PRIMARY : EEPROM::SBE_BACKUP ;
TRACFCOMP( g_trac_sbe, INFO_MRK"SBE Update tgt=0x%X: "
-@@ -3279,12 +3322,12 @@ namespace SBE
+@@ -3201,12 +3244,12 @@ namespace SBE
+
// Compare against 'current' Master side in case there is
// an issue with the other side
- if (io_sbeStates_v[i].cur_seeprom_side ==
-- PNOR::SBE_SEEPROM0)
-+ SBE_SEEPROM0)
+- if (io_sbeStates_v[i].cur_seeprom_side == PNOR::SBE_SEEPROM0)
++ if (io_sbeStates_v[i].cur_seeprom_side == SBE_SEEPROM0)
{
ver_ptr =
&(io_sbeStates_v[i].seeprom_0_ver.image_version);
@@ -3227,12 +3846,12 @@
{
ver_ptr =
&(io_sbeStates_v[i].seeprom_1_ver.image_version);
-@@ -3428,12 +3471,12 @@ namespace SBE
+@@ -3346,12 +3389,12 @@ namespace SBE
+ else
{
// Not Master, so get 'current' version
- if (io_sbeStates_v[i].cur_seeprom_side ==
-- PNOR::SBE_SEEPROM0)
-+ SBE_SEEPROM0)
+- if (io_sbeStates_v[i].cur_seeprom_side == PNOR::SBE_SEEPROM0)
++ if (io_sbeStates_v[i].cur_seeprom_side == SBE_SEEPROM0)
{
ver_ptr =
&(io_sbeStates_v[i].seeprom_0_ver.image_version);
@@ -3243,10 +3862,21 @@
ver_ptr =
&(io_sbeStates_v[i].seeprom_1_ver.image_version);
diff --git a/src/usr/sbe/sbe_update.H b/src/usr/sbe/sbe_update.H
-index e49c582..09aa476 100644
+index e49c582..aa880b2 100644
--- a/src/usr/sbe/sbe_update.H
+++ b/src/usr/sbe/sbe_update.H
-@@ -55,6 +55,10 @@ namespace SBE
+@@ -5,9 +5,7 @@
+ /* */
+ /* OpenPOWER HostBoot Project */
+ /* */
+-/* Contributors Listed Below - COPYRIGHT 2013,2015 */
+-/* [+] International Business Machines Corp. */
+-/* */
++/* COPYRIGHT International Business Machines Corp. 2013,2014 */
+ /* */
+ /* Licensed under the Apache License, Version 2.0 (the "License"); */
+ /* you may not use this file except in compliance with the License. */
+@@ -55,6 +53,10 @@ namespace SBE
const uint64_t SBE_IMAGE_SEEPROM_ADDRESS = 0x400; // 1KB
const uint64_t SBE_VERSION_SEEPROM_ADDRESS = 0x300; // 1KB - 256B
@@ -3257,7 +3887,7 @@
// PNOR SBE and SBEC Partition constants
const uint32_t MAX_SBE_ENTRIES = 9;
const uint32_t SBETOC_EYECATCH = 0x53424500; //'SBE\0'
-@@ -104,6 +108,14 @@ namespace SBE
+@@ -104,6 +106,14 @@ namespace SBE
MVPDOP_WRITE, // Write version data to MVPD
};
@@ -3272,7 +3902,7 @@
// Actions can be combined
enum sbeUpdateActions_t
{
-@@ -117,6 +129,7 @@ namespace SBE
+@@ -117,6 +127,7 @@ namespace SBE
UNSUPPORTED_SITUATION = 0x80000000,
};
@@ -3280,7 +3910,7 @@
/******************************************/
/* Structs */
/******************************************/
-@@ -196,9 +209,9 @@ namespace SBE
+@@ -196,9 +207,9 @@ namespace SBE
bool seeprom_0_ver_ECC_fail;
bool seeprom_1_ver_ECC_fail;
@@ -3293,7 +3923,7 @@
// Customized Image Information for this Target
size_t customizedImage_size;
-@@ -318,6 +331,21 @@ namespace SBE
+@@ -318,6 +329,21 @@ namespace SBE
void* io_imgPtr,
size_t& o_actImgSize);
diff --git a/openpower/package/hostboot/hostboot.mk b/openpower/package/hostboot/hostboot.mk
index 2055371..5bc680b 100644
--- a/openpower/package/hostboot/hostboot.mk
+++ b/openpower/package/hostboot/hostboot.mk
@@ -4,7 +4,7 @@
#
################################################################################
-HOSTBOOT_VERSION ?= 7a51e37d5d7672fbef3a8f3c4a11a652ded9241a
+HOSTBOOT_VERSION ?= 7c5d303237f2bec25b7072ec3119d6d4fef875fc
HOSTBOOT_SITE ?= $(call github,open-power,hostboot,$(HOSTBOOT_VERSION))
HOSTBOOT_LICENSE = Apache-2.0