diff options
author | Matt Ploetz <maploetz@us.ibm.com> | 2013-11-08 15:24:29 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-11-08 20:20:06 -0600 |
commit | c2f709814c7b031e09c0aba66a201f0d63698674 (patch) | |
tree | d73e2dfa4ec15f025a68a60cfacd9ffe4865f318 /src/usr/hwpf/hwp/nest_chiplets | |
parent | f60b3727eb2af1217b6dd32a5828db4819a94dc2 (diff) | |
download | talos-hostboot-c2f709814c7b031e09c0aba66a201f0d63698674.tar.gz talos-hostboot-c2f709814c7b031e09c0aba66a201f0d63698674.zip |
INITPROC: Hostboot - SW229144 HOT P8 DD 2.0 bringup fixes
Change-Id: I4978dd4cf63d43d28ce2bd6bf9c1d0443a62de61
CMVC-Coreq: 902451
CQ: SW229144
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/7134
Reviewed-by: Thi N. Tran <thi@us.ibm.com>
Reviewed-by: Brian H. Horton <brianh@linux.ibm.com>
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/nest_chiplets')
-rw-r--r-- | src/usr/hwpf/hwp/nest_chiplets/proc_a_x_pci_dmi_pll_setup/proc_a_x_pci_dmi_pll_utils.C | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/src/usr/hwpf/hwp/nest_chiplets/proc_a_x_pci_dmi_pll_setup/proc_a_x_pci_dmi_pll_utils.C b/src/usr/hwpf/hwp/nest_chiplets/proc_a_x_pci_dmi_pll_setup/proc_a_x_pci_dmi_pll_utils.C index af09b1947..90ad8d69b 100644 --- a/src/usr/hwpf/hwp/nest_chiplets/proc_a_x_pci_dmi_pll_setup/proc_a_x_pci_dmi_pll_utils.C +++ b/src/usr/hwpf/hwp/nest_chiplets/proc_a_x_pci_dmi_pll_setup/proc_a_x_pci_dmi_pll_utils.C @@ -20,7 +20,7 @@ /* Origin: 30 */ /* */ /* IBM_PROLOG_END_TAG */ -// $Id: proc_a_x_pci_dmi_pll_utils.C,v 1.4 2013/09/30 16:09:57 jmcgill Exp $ +// $Id: proc_a_x_pci_dmi_pll_utils.C,v 1.5 2013/10/28 06:45:46 jmcgill Exp $ // $Source: /afs/awd/projects/eclipz/KnowledgeBase/.cvsroot/eclipz/chips/p8/working/procedures/ipl/fapi/proc_a_x_pci_dmi_pll_utils.C,v $ //------------------------------------------------------------------------------ // *| @@ -110,6 +110,7 @@ fapi::ReturnCode proc_a_x_pci_dmi_pll_scan_bndy( // return codes uint32_t rc_ecmd = 0; fapi::ReturnCode rc; + bool unmask_scan_collision = false; // mark function entry FAPI_DBG("Start"); @@ -122,7 +123,17 @@ fapi::ReturnCode proc_a_x_pci_dmi_pll_scan_bndy( if (i_mask_scan_collision) { + FAPI_DBG("Reading value of Pervasive LFIR scan collision mask bit ..."); + rc = fapiGetScom(i_target, i_chiplet_base_scom_addr | GENERIC_PERV_LFIR_MASK_0x0004000D, data); + if (!rc.ok()) + { + FAPI_ERR("Error reading Pervasive LFIR Mask OR Register."); + break; + } + unmask_scan_collision = data.isBitClear(PERV_LFIR_SCAN_COLLISION_BIT); + FAPI_DBG("Masking Pervasive LFIR scan collision bit ..."); + rc_ecmd |= data.flushTo0(); rc_ecmd |= data.setBit(PERV_LFIR_SCAN_COLLISION_BIT); if (rc_ecmd) { @@ -271,12 +282,15 @@ fapi::ReturnCode proc_a_x_pci_dmi_pll_scan_bndy( break; } - FAPI_DBG("Unmasking Pervasive LFIR scan collision bit ..."); - rc = fapiPutScom(i_target, i_chiplet_base_scom_addr | GENERIC_PERV_LFIR_MASK_AND_0x0004000E, data); - if (!rc.ok()) + if (unmask_scan_collision) { - FAPI_ERR("Error writing Pervasive LFIR Mask And Register."); - break; + FAPI_DBG("Unmasking Pervasive LFIR scan collision bit ..."); + rc = fapiPutScom(i_target, i_chiplet_base_scom_addr | GENERIC_PERV_LFIR_MASK_AND_0x0004000E, data); + if (!rc.ok()) + { + FAPI_ERR("Error writing Pervasive LFIR Mask And Register."); + break; + } } } } while(0); |