summaryrefslogtreecommitdiffstats
path: root/src/usr/hwpf
diff options
context:
space:
mode:
authorThi Tran <thi@us.ibm.com>2014-04-25 10:13:57 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-04-25 16:02:06 -0500
commit8127d47378f3d8f64fd6f203884d5be936ebbbc3 (patch)
treed2723e3fcfc989c5502ff51b1f9862e68a088b8c /src/usr/hwpf
parent6a6243fc44197c1fc1b4e9fd16a3bd1f08819b1e (diff)
downloadtalos-hostboot-8127d47378f3d8f64fd6f203884d5be936ebbbc3.tar.gz
talos-hostboot-8127d47378f3d8f64fd6f203884d5be936ebbbc3.zip
SW258782: INITPROC: FSP & Hostboot - p8_pore_table_gen_api_fixed.C v1.1
Change-Id: Ifccc0496a937bed915f2efd6b11d6cc6e3752c8e CQ:SW258782 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/10765 Reviewed-by: Thi N. Tran <thi@us.ibm.com> Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf')
-rw-r--r--src/usr/hwpf/hwp/build_winkle_images/p8_slw_build/p8_pore_table_gen_api_fixed.C17
-rw-r--r--src/usr/hwpf/hwp/build_winkle_images/proc_mailbox_utils/p8_mailbox_utils.C20
2 files changed, 26 insertions, 11 deletions
diff --git a/src/usr/hwpf/hwp/build_winkle_images/p8_slw_build/p8_pore_table_gen_api_fixed.C b/src/usr/hwpf/hwp/build_winkle_images/p8_slw_build/p8_pore_table_gen_api_fixed.C
index df348368d..52abb4896 100644
--- a/src/usr/hwpf/hwp/build_winkle_images/p8_slw_build/p8_pore_table_gen_api_fixed.C
+++ b/src/usr/hwpf/hwp/build_winkle_images/p8_slw_build/p8_pore_table_gen_api_fixed.C
@@ -20,7 +20,7 @@
/* Origin: 30 */
/* */
/* IBM_PROLOG_END_TAG */
-// $Id: p8_pore_table_gen_api_fixed.C,v 1.12 2014/01/28 04:16:57 cmolsen Exp $
+// $Id: p8_pore_table_gen_api_fixed.C,v 1.13 2014/04/11 01:24:31 cmolsen Exp $
//
/*------------------------------------------------------------------------------*/
/* *! (C) Copyright International Business Machines Corp. 2012 */
@@ -74,7 +74,7 @@ uint32_t p8_pore_gen_cpureg_fixed( void *io_image,
SbeXipItem xipTocItem;
RamTableEntry ramEntryThis, *ramEntryNext;
uint32_t sprSwiz=0;
-
+
// -------------------------------------------------------------------------
// Validate Ramming parameters.
//
@@ -106,6 +106,11 @@ uint32_t p8_pore_gen_cpureg_fixed( void *io_image,
rcLoc = 1;
}
// ...check thread ID
+ // - ensure it's zero if SPR is not thread scoped, i.e. if SPR is core scoped.
+ // - error out if threadId exceed max num of threads.
+ if (i_regName!=P8_SPR_HSPRG0 && i_regName!=P8_SPR_LPCR && i_regName!=P8_MSR_MSR) {
+ i_threadId = 0;
+ }
if (i_threadId>=SLW_CORE_THREADS) {
MY_ERR("Thread ID = %i is not within valid range of [0;%i]\n",i_threadId,SLW_CORE_THREADS-1);
rcLoc = 1;
@@ -137,7 +142,7 @@ uint32_t p8_pore_gen_cpureg_fixed( void *io_image,
return IMGBUILD_ERR_RAM_HDRS_NOT_SYNCED;
}
else {
- MY_DBG("hostSlwSectionFixed == hostSlwRamSection(from image api).\n");
+ MY_INF("hostSlwSectionFixed == hostSlwRamSection(from image api).\n");
}
}
else { // SRAM non-fixed image.
@@ -454,7 +459,7 @@ uint32_t p8_pore_gen_scom_fixed( void *io_image,
return IMGBUILD_ERR_SCOM_HDRS_NOT_SYNCD;
}
else {
- MY_DBG("hostSlwSectionFixed == hostSlwSection(from image api).\n");
+ MY_INF("hostSlwSectionFixed == hostSlwSection(from image api).\n");
}
}
else { // SRAM non-fixed image.
@@ -605,10 +610,10 @@ uint32_t p8_pore_gen_scom_fixed( void *io_image,
// - For an append operation, if a NOP is found (before a RET obviously), the
// SCOM is replacing that NNNN sequence.
hostScomEntryNext = hostScomTableThis;
- MY_DBG("hostScomEntryNext (addr): 0x%016llx\n ",(uint64_t)hostScomEntryNext);
+ MY_INF("hostScomEntryNext (addr): 0x%016llx\n ",(uint64_t)hostScomEntryNext);
while (memcmp(hostScomEntryNext, bufRET, sizeof(uint32_t))) {
entriesCount++;
- MY_DBG("Number of SCOM entries: %i\n ",entriesCount);
+ MY_INF("Number of SCOM entries: %i\n ",entriesCount);
if (*((uint32_t*)bufIIS+1)==*((uint32_t*)hostScomEntryNext+1) && entriesMatch==0) {// +1 skips 1st word in Scom entry (which loads the PC in an LS operation.)
hostScomEntryMatch = hostScomEntryNext;
entriesMatch++;
diff --git a/src/usr/hwpf/hwp/build_winkle_images/proc_mailbox_utils/p8_mailbox_utils.C b/src/usr/hwpf/hwp/build_winkle_images/proc_mailbox_utils/p8_mailbox_utils.C
index 405cdd7ad..691d5ea8c 100644
--- a/src/usr/hwpf/hwp/build_winkle_images/proc_mailbox_utils/p8_mailbox_utils.C
+++ b/src/usr/hwpf/hwp/build_winkle_images/proc_mailbox_utils/p8_mailbox_utils.C
@@ -21,7 +21,7 @@
/* */
/* IBM_PROLOG_END_TAG */
// -*- mode: C++; c-file-style: "linux"; -*-
-// $Id: p8_mailbox_utils.C,v 1.3 2014/02/26 04:58:11 jmcgill Exp $
+// $Id: p8_mailbox_utils.C,v 1.4 2014/04/01 21:52:25 jmcgill Exp $
// $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/p8/working/procedures/ipl/fapi/p8_mailbox_utils.C,v $
//------------------------------------------------------------------------------
// *|
@@ -760,17 +760,27 @@ fapi::ReturnCode p8_mailbox_utils_get_mbox4( const fapi::Target &i_target, uint3
l_fapirc = FAPI_ATTR_GET( ATTR_MNFG_FLAGS,
NULL,
l_mnfg_flags );
- if (l_fapirc )
+ if (l_fapirc )
{
FAPI_ERR("fapiGetAttribute of ATTR_MNFG_FLAGS failed");
break;
}
FAPI_INF( "ATTR_MNFG_FLAGS => %016llX", l_mnfg_flags);
- if ((l_mnfg_flags & fapi::ENUM_ATTR_MNFG_FLAGS_MNFG_BRAZOS_WRAP_CONFIG) ==
- fapi::ENUM_ATTR_MNFG_FLAGS_MNFG_BRAZOS_WRAP_CONFIG)
+ // get chip type
+ // TODO RTC 102992
+ fapi::ATTR_NAME_Type l_chip_type;
+ l_fapirc = FAPI_ATTR_GET_PRIVILEGED(ATTR_NAME, &i_target, l_chip_type);
+ if (l_fapirc)
+ {
+ FAPI_ERR("fapiGetAttribute (Privildged) of ATTR_NAME failed");
+ break;
+ }
+
+ if (((l_mnfg_flags & fapi::ENUM_ATTR_MNFG_FLAGS_MNFG_BRAZOS_WRAP_CONFIG) ==
+ fapi::ENUM_ATTR_MNFG_FLAGS_MNFG_BRAZOS_WRAP_CONFIG) ||
+ (l_chip_type == fapi::ENUM_ATTR_NAME_MURANO))
{
- FAPI_INF("ATTR_MNFG_FLAGS => %016llX", l_mnfg_flags);
o_set_data |= 1 << (sizeof(o_set_data)*8 - WRAP_TEST_BIT - 1);
}
OpenPOWER on IntegriCloud