summaryrefslogtreecommitdiffstats
path: root/src/usr/xscom/xscom.C
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2013-05-29 21:49:49 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2013-07-01 10:58:58 -0500
commit76a52f0d023c7ebc7daee44dd409e760994dfcdb (patch)
treea38d16f233d9daf0c961fe40b3bc8abe4647e6c0 /src/usr/xscom/xscom.C
parent166d3eafee5895c793d53cd8b236ce5ec7e8dea3 (diff)
downloadtalos-hostboot-76a52f0d023c7ebc7daee44dd409e760994dfcdb.tar.gz
talos-hostboot-76a52f0d023c7ebc7daee44dd409e760994dfcdb.zip
FSI Fixes for multi-chip support
Changes include the following: - Fix for modified slave break behavior - Xscom chipid bug fix RTC: 64149 Change-Id: Icd9c93ed265f0004ab4a726fcc01bde0cbe3eadf Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/5097 Tested-by: Jenkins Server Reviewed-by: Michael Baiocchi <baiocchi@us.ibm.com> Reviewed-by: ADAM R. MUHLE <armuhle@us.ibm.com> Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/xscom/xscom.C')
-rw-r--r--src/usr/xscom/xscom.C14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/usr/xscom/xscom.C b/src/usr/xscom/xscom.C
index 1114e8c3d..331966b49 100644
--- a/src/usr/xscom/xscom.C
+++ b/src/usr/xscom/xscom.C
@@ -387,14 +387,18 @@ errlHndl_t getTargetVirtualAddress(TARGETING::Target* i_target,
( ( (g_xscomMaxChipsPerNode * xscomNodeId) +
xscomChipId ) * THIRTYTWO_GB);
+ TRACFCOMP(g_trac_xscom,
+ "Target %.8X :: Node:%d Chip:%d :: XscomBase:0x%llX",
+ TARGETING::get_huid(i_target),
+ xscomNodeId,
+ xscomChipId,
+ l_XSComBaseAddr);
+
// Target's virtual address
o_virtAddr = static_cast<uint64_t*>
(mmio_dev_map(reinterpret_cast<void*>(l_XSComBaseAddr),
THIRTYTWO_GB));
- TRACDCOMP(g_trac_xscom, "xscomPerformOp: o_Virtual Address = 0x%llX\n",
- o_virtAddr);
-
// Implemented the virtual address attribute..
// Leaving the comments as a discussion point...
@@ -565,7 +569,7 @@ uint64_t* getCpuIdVirtualAddress()
//NNNCCCPPPPTTT format fot the cpuid..
// N = node, C = chip, P = proc, T = thread
- uint32_t chipId = (cpuid & 0x0480)>>7;
+ uint32_t chipId = (cpuid & 0x0380)>>7;
uint32_t nodeId = (cpuid & 0x1C00)>>10;
XSComBase_t l_systemBaseAddr = MASTER_PROC_XSCOM_BASE_ADDR;
@@ -610,7 +614,7 @@ void resetScomEngine(TARGETING::Target* i_target,
0x02020007,
0x02020009};
- TRACFCOMP(g_trac_xscom,"XSCOM RESET INTIATED");
+ TRACFCOMP(g_trac_xscom,"XSCOM RESET INITIATED");
// Loop through the registers you want to write to 0
for (int i = 0; i<3; i++)
OpenPOWER on IntegriCloud