summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSachin Gupta <sgupta2m@in.ibm.com>2016-10-14 10:16:58 -0500
committerAMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com>2016-10-14 14:22:50 -0400
commit40051744d8ed7d308cf6a609ed3da43a17dc1332 (patch)
tree2364fa739dd2c08f9d1a3e0b8f2d3217a69e8acf
parente5abfe5f5da515ca51f9ae8524d47822b28e49ea (diff)
downloadtalos-sbe-40051744d8ed7d308cf6a609ed3da43a17dc1332.tar.gz
talos-sbe-40051744d8ed7d308cf6a609ed3da43a17dc1332.zip
Fix for delay, fifo and npllsetup ( placement in memory )
1. FAPI Delay does not use uint64_t when converting nanoseconds to ppe timebase. Also as delay is working, updated wait time in test case framework. 2. npll setup procedure is moved to PIBMEM as npll setup changes sbe frequence and we can not access seeprom before changing I2C bit divisor rate. 3. In FIFO utils, the empty status of queue is next state. So we need to use valid flag to see if FIFO was really empty. Change-Id: I59ccfc70f3013822532110230ec231408675a1a0 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/31245 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: SRINIVAS V. POLISETTY <srinivan@in.ibm.com> Reviewed-by: RAJA DAS <rajadas2@in.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: AMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com>
-rw-r--r--src/build/import_hwp_mk/istep2/istep2files.mk2
-rw-r--r--src/build/import_hwp_mk/istepcommon/istepcommonfiles.mk1
-rw-r--r--src/hwpf/src/plat/plat_utils.C2
-rw-r--r--src/sbefw/sbeFifoMsgUtils.C3
-rw-r--r--src/test/testcases/testUtil.py4
5 files changed, 7 insertions, 5 deletions
diff --git a/src/build/import_hwp_mk/istep2/istep2files.mk b/src/build/import_hwp_mk/istep2/istep2files.mk
index 1d8113df..297c9dba 100644
--- a/src/build/import_hwp_mk/istep2/istep2files.mk
+++ b/src/build/import_hwp_mk/istep2/istep2files.mk
@@ -6,6 +6,7 @@
# OpenPOWER sbe Project
#
# Contributors Listed Below - COPYRIGHT 2016
+# [+] International Business Machines Corp.
#
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,7 +34,6 @@ ISTEP2-CPP-SOURCES = p9_sbe_attr_setup.C
ISTEP2-CPP-SOURCES +=p9_sbe_tp_chiplet_init1.C
ISTEP2-CPP-SOURCES +=p9_sbe_tp_gptr_time_initf.C
ISTEP2-CPP-SOURCES +=p9_sbe_npll_initf.C
-ISTEP2-CPP-SOURCES +=p9_sbe_npll_setup.C
ISTEP2-CPP-SOURCES +=p9_sbe_clock_test2.C
ISTEP2-CPP-SOURCES +=p9_sbe_tp_chiplet_reset.C
ISTEP2-CPP-SOURCES +=p9_sbe_tp_repr_initf.C
diff --git a/src/build/import_hwp_mk/istepcommon/istepcommonfiles.mk b/src/build/import_hwp_mk/istepcommon/istepcommonfiles.mk
index d93f768e..402de306 100644
--- a/src/build/import_hwp_mk/istepcommon/istepcommonfiles.mk
+++ b/src/build/import_hwp_mk/istepcommon/istepcommonfiles.mk
@@ -52,6 +52,7 @@ ISTEPCOMMON-CPP-SOURCES +=p9_adu_coherent_utils.C
ISTEPCOMMON-CPP-SOURCES +=p9_adu_access.C
#Istep2 Procedure but this is required to run from PIBMEM
ISTEPCOMMON-CPP-SOURCES +=p9_sbe_tp_switch_gears.C
+ISTEPCOMMON-CPP-SOURCES +=p9_sbe_npll_setup.C
ISTEPCOMMON-C-SOURCES =
ISTEPCOMMON-S-SOURCES =
diff --git a/src/hwpf/src/plat/plat_utils.C b/src/hwpf/src/plat/plat_utils.C
index decb9264..94adc7d6 100644
--- a/src/hwpf/src/plat/plat_utils.C
+++ b/src/hwpf/src/plat/plat_utils.C
@@ -50,7 +50,7 @@ namespace fapi2
#ifndef __FAPI_DELAY_SIM__
-#define PK_NANOSECONDS_SBE(n) ((PkInterval)((PK_BASE_FREQ_HZ * (PkInterval)(n)) / (1024*1024*1024)))
+#define PK_NANOSECONDS_SBE(n) ((PkTimebase)((PK_BASE_FREQ_HZ * (PkTimebase)(n)) / (1024*1024*1024)))
PkTimebase target_time;
PkTimebase current_time;
diff --git a/src/sbefw/sbeFifoMsgUtils.C b/src/sbefw/sbeFifoMsgUtils.C
index 2d18a1d3..75489cae 100644
--- a/src/sbefw/sbeFifoMsgUtils.C
+++ b/src/sbefw/sbeFifoMsgUtils.C
@@ -150,7 +150,8 @@ uint32_t sbeUpFifoDeq_mult (uint32_t &io_len,
}
// if Upstream FIFO is empty,
- if (l_data.statusOrReserved.fifo_empty)
+ if ( ( l_data.statusOrReserved.fifo_empty) &&
+ ( !l_data.statusOrReserved.valid_flag))
{
pk_sleep(PK_MILLISECONDS(FIFO_WAIT_SLEEP_TIME));
continue;
diff --git a/src/test/testcases/testUtil.py b/src/test/testcases/testUtil.py
index 133efcc5..db8fbfbb 100644
--- a/src/test/testcases/testUtil.py
+++ b/src/test/testcases/testUtil.py
@@ -114,7 +114,7 @@ def writeEntry(obj, address, value ):
count = count + 1
runCycles(200000)
# This will cause test to fail
- if(count > 10):
+ if(count > 50):
raise Exception('Timeout. FIFO FULL');
else:
# write entry
@@ -143,7 +143,7 @@ def readEntry(obj, address, size):
count = count + 1
runCycles(200000)
# This will cause test to fail
- if(count > 10):
+ if(count > 50):
raise Exception('Timeout. Empty FIFO');
return value
OpenPOWER on IntegriCloud