diff options
Diffstat (limited to 'src/test/testcases/testAduMem_noEccNoItag.py')
-rw-r--r-- | src/test/testcases/testAduMem_noEccNoItag.py | 78 |
1 files changed, 30 insertions, 48 deletions
diff --git a/src/test/testcases/testAduMem_noEccNoItag.py b/src/test/testcases/testAduMem_noEccNoItag.py index bd0fc686..f23b4824 100644 --- a/src/test/testcases/testAduMem_noEccNoItag.py +++ b/src/test/testcases/testAduMem_noEccNoItag.py @@ -5,7 +5,7 @@ # # OpenPOWER sbe Project # -# Contributors Listed Below - COPYRIGHT 2016 +# Contributors Listed Below - COPYRIGHT 2016,2017 # [+] International Business Machines Corp. # # @@ -23,46 +23,13 @@ # # IBM_PROLOG_END_TAG import sys +import os +import struct sys.path.append("targets/p9_nimbus/sbeTest" ) import testUtil +import testMemUtil as testMemProcUtil err = False -LOOP_COUNT = 1 - -PUTMEMADU_CNTLDATA = [0,0,0,0, - 0,0,0xA4,0x02, - 0,0,0x0,0xA5, #CoreChipletId/EccByte/Flags -> NoEccOverride/CacheInhibit/FastMode/NoTag/NoEcc/AutoIncr/Adu/Proc - 0,0,0,0, # Addr Upper 32 bit - 0x08,0x00,0x00,0x00, # Addr Lower 32 bit - 0x00,0x00,0x00,0x10] # length of data - -PUTMEMADU_TESTDATA = [0xab,0xcd,0xef,0x12, - 0xba,0xdc,0xfe,0x21, - 0x34,0x56,0x78,0x9a, - 0x43,0x65,0x87,0xa9] - -PUTMEMADU_EXPDATA = [0x00,0x00,0x00,0x10, # length of data - 0xc0,0xde,0xa4,0x02, - 0x0,0x0,0x0,0x0, - 0x00,0x0,0x0,0x03]; - - - -GETMEMADU_TESTDATA = [0,0,0,0x6, - 0,0,0xA4,0x01, - 0,0,0x0,0xA5, #CoreChipletId/EccByte/Flags -> CacheInhibit/FastMode/NoTag/NoEcc/AutoIncr/Adu/Proc - 0,0,0,0, # Addr Upper 32 bit - 0x08,0x00,0x00,0x00, # Addr Lower 32 bit - 0x00,0x00,0x00,0x10] # length of data - -GETMEMADU_EXPDATA = [0xab,0xcd,0xef,0x12, #data - 0xba,0xdc,0xfe,0x21, - 0x34,0x56,0x78,0x9a, - 0x43,0x65,0x87,0xa9, - 0x00,0x00,0x00,0x10, # length of data - 0xc0,0xde,0xa4,0x01, - 0x0,0x0,0x0,0x0, - 0x00,0x0,0x0,0x03]; # MAIN Test Run Starts Here... @@ -71,20 +38,35 @@ def main( ): testUtil.runCycles( 10000000 ) #PutMemAdu Test - testUtil.writeUsFifo( PUTMEMADU_CNTLDATA ) - testUtil.writeUsFifo( PUTMEMADU_TESTDATA ) - testUtil.writeEot( ) - - testUtil.readDsFifo( PUTMEMADU_EXPDATA ) - testUtil.readEot( ) + data = os.urandom(80) + data = [ord(c) for c in data] + testMemProcUtil.putmem(0x08000000, data, 0xA5) # GetMemAdu test - testUtil.writeUsFifo( GETMEMADU_TESTDATA ) - testUtil.writeEot( ) + readData = testMemProcUtil.getmem(0x08000000, 80, 0xA5) + if(data == readData): + print ("Success - Write-Read ADU") + else: + print data + print readData + raise Exception('data mistmach') + + # Partial Write test + readData = testMemProcUtil.getmem(0x08000000, 40, 0xA5) + data = os.urandom(8) + data = [ord(c) for c in data] + testMemProcUtil.putmem(0x08000008, data, 0xA5) + readBackData = testMemProcUtil.getmem(0x08000000, 40, 0xA5) + sandwichData = readData[:8]+data+readData[len(data)+8:] + if(sandwichData == readBackData): + print ("Success - Write_Part-Read ADU") + else: + print readData + print data + print readBackData + print sandwichData + raise Exception('data mistmach') - testUtil.readDsFifo( GETMEMADU_EXPDATA ) - testUtil.runCycles( 10000000 ) - testUtil.readEot( ) #------------------------------------------------- # Calling all test code |