summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDean Sanner <dsanner@us.ibm.com>2014-04-22 21:37:53 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-04-24 08:25:22 -0500
commit993ccd80a387ab6d70f54bcfea8c36344ff6f5cb (patch)
treee5d12aa5010f38fcddf3e382df4c525878a467f0
parenta943cc9960ba6393de4dfd6f8c73c1b45a6a670b (diff)
downloadtalos-hostboot-993ccd80a387ab6d70f54bcfea8c36344ff6f5cb.tar.gz
talos-hostboot-993ccd80a387ab6d70f54bcfea8c36344ff6f5cb.zip
Zero out PBA BAR 0 for MPIPL
Change-Id: I3f2b721fe19d4a7b453ee685f1ec90af9bdf6b4f CQ: SW258345 Backport: release-fips810 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/10698 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
-rw-r--r--src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C31
1 files changed, 29 insertions, 2 deletions
diff --git a/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C b/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C
index 662bc36c3..37f290468 100644
--- a/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C
+++ b/src/usr/hwpf/hwp/build_winkle_images/build_winkle_images.C
@@ -72,6 +72,7 @@
#include "p8_slw_build/p8_slw_build.H"
#include "p8_slw_build/p8_pore_table_gen_api.H"
#include "p8_set_pore_bar/p8_set_pore_bar.H"
+#include "p8_set_pore_bar/p8_pba_bar_config.H"
#include "p8_pm.H" // PM_INIT
#include "p8_set_pore_bar/p8_poreslw_init.H"
#include "p8_slw_build/sbe_xip_image.h"
@@ -718,13 +719,39 @@ void* call_proc_set_pore_bar( void *io_pArgs )
(l_pImage));
}
-
- if ( l_errl )
+ if (l_errl)
{
TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
"ERROR : p8_set_pore_bar, PLID=0x%x",
l_errl->plid() );
+ }
+ else
+ {
+ //No error on previous call, make sure to
+ //init PBA BAR 0 to 0s. This is required on MPIPLs
+ //so sapphire can determine when OCC is active. FSPless
+ //it will be active before hostboot hands over control
+ //FSP mode it will be loaded in sapphire
+
+ FAPI_INVOKE_HWP( l_errl,
+ p8_pba_bar_config,
+ l_fapi_cpu_target,
+ 0, //PBA BAR 0
+ 0, //Addr 0
+ 0, //Size 0
+ 0); //Cmd 0
+
+ if (l_errl)
+ {
+ TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace,
+ "ERROR : p8_pba_bar_config, PLID=0x%x",
+ l_errl->plid() );
+ }
+ }
+
+ if ( l_errl )
+ {
// capture the target data in the elog
ErrlUserDetailsTarget(l_procChip).addToLog( l_errl );
OpenPOWER on IntegriCloud