diff options
author | Sachin Gupta <sgupta2m@in.ibm.com> | 2015-09-23 05:09:17 -0500 |
---|---|---|
committer | Amit J. Tendolkar <amit.tendolkar@in.ibm.com> | 2015-11-16 00:25:50 -0600 |
commit | 88f4efefa579dc33953936817b3e8d6ddf1d651f (patch) | |
tree | 35af4c2409b79b34c83cc69ec8e0f34662401ebd /sbe/test | |
parent | deb3046d088210c2af9c6e3f49f1155969702d27 (diff) | |
download | talos-sbe-88f4efefa579dc33953936817b3e8d6ddf1d651f.tar.gz talos-sbe-88f4efefa579dc33953936817b3e8d6ddf1d651f.zip |
CI Test infrastructure support
RTC: 123606
Change-Id: Icf1410c21a9b5691d3b6ea9b54e2507acef61a5d
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/20724
Tested-by: Jenkins Server
Reviewed-by: Basabjit Sengupta <basengup@in.ibm.com>
Reviewed-by: Amit J. Tendolkar <amit.tendolkar@in.ibm.com>
Diffstat (limited to 'sbe/test')
-rwxr-xr-x | sbe/test/ffdc.xml | 7 | ||||
-rwxr-xr-x | sbe/test/simics-debug-framework.py | 60 | ||||
-rwxr-xr-x | sbe/test/test.xml | 17 | ||||
-rwxr-xr-x | sbe/test/testIstepAuto.py | 27 | ||||
-rwxr-xr-x | sbe/test/testIstepSuccess.py | 2 |
5 files changed, 98 insertions, 15 deletions
diff --git a/sbe/test/ffdc.xml b/sbe/test/ffdc.xml index 1218f35d..e98a110c 100755 --- a/sbe/test/ffdc.xml +++ b/sbe/test/ffdc.xml @@ -1,9 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> - + <!--Collect FFDC --> <test> <subtest> <testcase> - <simcmd>pipe \"p9Proc0.sbe.mibo_space.x (p9Proc0.sbe.ppe.sym g_pk_trace_buf_ptr) 0x2028\" \"sed 's/^p:0x........ //g' | sed 's/ ................$//g' | sed 's/ //g' | xxd -r -p> ppetrace.bin\"</simcmd> + <simcmd>sbe-trace</simcmd> + </testcase> + <testcase> + <simcmd>p9Proc0.sbe.ppe->ppe_state</simcmd> </testcase> <testcase> <simcmd>p9Proc0.proc_fifo->upstream_hw_fifo</simcmd> diff --git a/sbe/test/simics-debug-framework.py b/sbe/test/simics-debug-framework.py new file mode 100755 index 00000000..a96e891f --- /dev/null +++ b/sbe/test/simics-debug-framework.py @@ -0,0 +1,60 @@ +import os +import subprocess +import re +import random +import sys +sys.path.append("targets/p9_nimbus/sbeTest" ) +import testIstepAuto +err = False + +syms = {}; + + +# @fn register_hb_debug_framework_tools +# @brief Create a simics command wrapper for each debug tool module. +def register_sbe_debug_framework_tools(): + fillSymTable() + # Create command hook. + new_command("sbe-istep", testIstepAuto.sbe_istep_func, + args = [arg(int_t, "major"), arg(int_t, "minor")], + alias = "istep", + type = ["sbe-commands"], + short = "Runs the debug framework for istep ", + doc = "") + new_command("sbe-trace", collectTrace, + args = [], + alias = "strace", + type = ["sbe-commands"], + short = "Runs the debug framework for istep ", + doc = "") + print "SBE Debug Framework: Registered tool:", "sbe-istep" + print "SBE Debug Framework: Registered tool:", "sbe-trace" + + +def fillSymTable(): + symFile = os.environ['SBE_IMG_OUT_LOC'] + "/sbe.syms" + f = open( symFile, 'r') + for line in f: + words = line.split() + if( len(words) == 3): + syms[words[2]] = words[0] + +def collectTrace(): + cmd1 = "pipe \"p9Proc0.sbe.mibo_space.x 0x" + syms['g_pk_trace_buf'] + " 0x2028\" \"sed 's/^p:0x........ //g' | sed 's/ ................$//g' | sed 's/ //g' | xxd -r -p> ppetrace.bin\"" + toolPath = os.environ['SBE_IMG_OUT_LOC'] + "/../../tools/ppetracepp/" + cmd2 = "shell \"" + toolPath + "ppe2fsp ppetrace.bin sbetrace.bin \"" + cmd3 = "shell \"" + toolPath + "fsp-trace -s " + os.environ['SBE_IMG_OUT_LOC'] + "/trexStringFile sbetrace.bin > tracMERG \"" + cmd4 = "shell \"" + "cat tracMERG \"" + + ( rc, out ) = quiet_run_command( cmd1, output_modes.regular ) + if ( rc ): + print "simics ERROR running %s: %d "%( cmd1, rc ) + + SIM_run_alone( run_command, cmd2 ) + SIM_run_alone( run_command, cmd3 ) + SIM_run_alone( run_command, cmd4 ) + + +# Run the registration automatically whenever this script is loaded. +register_sbe_debug_framework_tools() + diff --git a/sbe/test/test.xml b/sbe/test/test.xml index 434a6df8..9433ba87 100755 --- a/sbe/test/test.xml +++ b/sbe/test/test.xml @@ -5,18 +5,11 @@ <machine>%%machine%%</machine> <test> - <!-- testcase> - <simcmd>new-symtable file = ~/workspace/sbe/obj/sbe_main.out name = sbe_main</simcmd> - </testcase> - <testcase> - <simcmd>@SIM_create_object('context', 'myppectx', [])</simcmd> - </testcase> - <testcase> - <simcmd>myppectx.symtable symtable = sbe_main</simcmd> - </testcase> - <testcase> - <simcmd>p9Proc0.sbe.ppe.set-context context = myppectx</simcmd> - </testcas --> + <!-- Register SBE tools --> + <testcase> + <simcmd>run-python-file targets/p9_nimbus/sbeTest/simics-debug-framework.py</simcmd> + <exitonerror>yes</exitonerror> + </testcase> <include>../simics/targets/p9_nimbus/sbeTest/testIstep.xml</include> <include>../simics/targets/p9_nimbus/sbeTest/testScom.xml</include> <include>../simics/targets/p9_nimbus/sbeTest/testGeneric.xml</include> diff --git a/sbe/test/testIstepAuto.py b/sbe/test/testIstepAuto.py new file mode 100755 index 00000000..25b9d206 --- /dev/null +++ b/sbe/test/testIstepAuto.py @@ -0,0 +1,27 @@ +import sys +sys.path.append("targets/p9_nimbus/sbeTest" ) +import testUtil +err = False + +EXPDATA = [0xc0,0xde,0xa1,0x01, + 0x0,0x0,0x0,0x0, + 0x00,0x0,0x0,0x03]; + +# MAIN Test Run Starts Here... +#------------------------------------------------- +def sbe_istep_func( major, minor ): + TESTDATA = [0,0,0,3, + 0,0,0xA1,0x01, + 0,major,0,minor ] + testUtil.runCycles( 10000000 ) + testUtil.writeUsFifo( TESTDATA ) + testUtil.writeEot( ) + testUtil.readDsFifo( EXPDATA ) + testUtil.readEot( ) + if err: + print ("\nTest completed with error(s)") + #sys.exit(1) + else: + print ("\nTest completed with no errors") + #sys.exit(0); + diff --git a/sbe/test/testIstepSuccess.py b/sbe/test/testIstepSuccess.py index 14d2e545..8c42a504 100755 --- a/sbe/test/testIstepSuccess.py +++ b/sbe/test/testIstepSuccess.py @@ -6,7 +6,7 @@ err = False TESTDATA = [0,0,0,3, 0,0,0xA1,0x01, - 0,0x02,0x00,0x3] + 0,0x02,0x00,0x2] EXPDATA = [0xc0,0xde,0xa1,0x01, 0x0,0x0,0x0,0x0, |