diff options
author | Thi Tran <thi@us.ibm.com> | 2014-04-25 10:13:57 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-04-25 16:02:06 -0500 |
commit | 8127d47378f3d8f64fd6f203884d5be936ebbbc3 (patch) | |
tree | d2723e3fcfc989c5502ff51b1f9862e68a088b8c /src/usr/hwpf | |
parent | 6a6243fc44197c1fc1b4e9fd16a3bd1f08819b1e (diff) | |
download | talos-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.C | 17 | ||||
-rw-r--r-- | src/usr/hwpf/hwp/build_winkle_images/proc_mailbox_utils/p8_mailbox_utils.C | 20 |
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); } |