From 67c5a1ebe73f81bca1bb6608bbb8f204f0f37fa8 Mon Sep 17 00:00:00 2001 From: Stephen Cprek Date: Fri, 14 Nov 2014 14:39:53 -0600 Subject: Support for Redundant Copy of HB code in PNOR - 2 TOC's per side - side, sideless, preserved, and readOnly tags - Determine which SEEPROM side HB booted from - Modify gaurd code to not run when gaurd section DNE Change-Id: I62dd27c9aa79c3111d27e647f1b66a7c938ad6e8 RTC:109398 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/14629 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III --- src/usr/pnor/runtime/rt_pnor.C | 11 +++++++---- src/usr/pnor/runtime/rt_pnor.H | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) (limited to 'src/usr/pnor/runtime') diff --git a/src/usr/pnor/runtime/rt_pnor.C b/src/usr/pnor/runtime/rt_pnor.C index c43160f44..c61aa1d2d 100644 --- a/src/usr/pnor/runtime/rt_pnor.C +++ b/src/usr/pnor/runtime/rt_pnor.C @@ -297,7 +297,7 @@ errlHndl_t RtPnor::flush( PNOR::SectionId i_section) } /*******Protected Methods**************/ RtPnor::RtPnor() -:iv_TOC_used(0) +:iv_TOC_used(PNOR::TOC_0) { errlHndl_t l_err = readTOC(); if (l_err) @@ -588,7 +588,10 @@ errlHndl_t RtPnor::readTOC () break; } - l_err = readFromDevice (l_procId, PNOR::TOC, PNOR::TOC_0_OFFSET, + // @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) { @@ -596,7 +599,7 @@ errlHndl_t RtPnor::readTOC () " for TOC0"); break; } - l_err = readFromDevice (l_procId, PNOR::TOC, PNOR::TOC_1_OFFSET, + l_err = readFromDevice (l_procId, PNOR::TOC, PNOR::SIDE_A_TOC_1_OFFSET, PAGESIZE, false,toc1Buffer); if (l_err) { @@ -605,7 +608,7 @@ errlHndl_t RtPnor::readTOC () break; } - l_err = PNOR::parseTOC(toc0Buffer, toc1Buffer, iv_TOC_used, iv_TOC,0); + l_err = PNOR::parseTOC(toc0Buffer, toc1Buffer, iv_TOC_used, iv_TOC, 0); if (l_err) { TRACFCOMP(g_trac_pnor, "RtPnor::readTOC: parseTOC failed"); diff --git a/src/usr/pnor/runtime/rt_pnor.H b/src/usr/pnor/runtime/rt_pnor.H index 43041fc3f..f3a03a5ec 100644 --- a/src/usr/pnor/runtime/rt_pnor.H +++ b/src/usr/pnor/runtime/rt_pnor.H @@ -81,7 +81,7 @@ class RtPnor /** * Which TOC (0 or 1) is used after verifying both. */ - uint32_t iv_TOC_used; + PNOR::TOCS iv_TOC_used; /** * Cached copy of section data -- cgit v1.2.1