From 8c276e4ad59bb6964d342121c69d78d896101d24 Mon Sep 17 00:00:00 2001 From: spashabk-in Date: Thu, 21 Jun 2018 05:13:24 -0500 Subject: Update memory address of ADU testcase Change-Id: Ibe9a7bde7e0471309792ac19b3e3aa0dd15e418f Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61053 Tested-by: Jenkins Server Tested-by: FSP CI Jenkins Reviewed-by: Sachin Gupta (cherry picked from commit 8487bc87a8908420b689b2f13688000240689154) Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61646 --- src/test/testcases/testUnsecureMemRegions.py | 126 ++++++++++++++------------- 1 file changed, 64 insertions(+), 62 deletions(-) (limited to 'src/test') diff --git a/src/test/testcases/testUnsecureMemRegions.py b/src/test/testcases/testUnsecureMemRegions.py index b44ac69a..b375b611 100644 --- a/src/test/testcases/testUnsecureMemRegions.py +++ b/src/test/testcases/testUnsecureMemRegions.py @@ -30,6 +30,8 @@ import testUtil import testMemUtil as testMemProcUtil err = False +MEM_WINDOWS_BASE_ADDRESS = 0x08000000 + 0x2000 + # MAIN Test Run Starts Here... #------------------------------------------------- def main(): @@ -41,7 +43,7 @@ def main(): # Test case 1: open RO mem region - success testcase = 1 - testMemProcUtil.setUnsecureMemRegion(0x07000000, 1024, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS, 1024, 0x0111, 0) # Test case 2: open RW mem region - success # This region is kept open for mem testcases - will be closed by # testUnsecureMemRegionsClose.py @@ -49,44 +51,44 @@ def main(): testMemProcUtil.setUnsecureMemRegion(0x08000000, 0x2000, 0x0112, 0) # Test case 3: close RO mem region - success testcase = 3 - testMemProcUtil.setUnsecureMemRegion(0x07000000, 1024, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS, 1024, 0x0120, 0) # Test case 4: open 9th window - failure testcase = 4 # 2 - testMemProcUtil.setUnsecureMemRegion(0x07000000, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS, 0x10, 0x0111, 0) # 3 - testMemProcUtil.setUnsecureMemRegion(0x07000010, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x10, 0x10, 0x0111, 0) # 4 - testMemProcUtil.setUnsecureMemRegion(0x07000020, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x20, 0x10, 0x0111, 0) # 5 - testMemProcUtil.setUnsecureMemRegion(0x07000030, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x30, 0x10, 0x0111, 0) # 6 - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x10, 0x0111, 0) # 7 - testMemProcUtil.setUnsecureMemRegion(0x07000050, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x50, 0x10, 0x0111, 0) # 8 - testMemProcUtil.setUnsecureMemRegion(0x07000060, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x10, 0x0111, 0) # 9 - failed - response expected - # SBE_PRI_USER_ERROR = 0x03 # SBE_SEC_MAXIMUM_MEM_REGION_EXCEEDED = 0x16 - testMemProcUtil.setUnsecureMemRegion(0x07000070, 0x10, 0x0111, 0x00030016) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x70, 0x10, 0x0111, 0x00030016) # Test case 5: open existing window - failure testcase = 5 # response expected # SBE_PRI_USER_ERROR = 0x03 # SBE_SEC_MEM_REGION_AMEND_ATTEMPTED = 0x17 - testMemProcUtil.setUnsecureMemRegion(0x07000060, 0x10, 0x0111, 0x00030017) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x10, 0x0111, 0x00030017) # Test case 6: close non-existing window - failure testcase = 6 # response expected # SBE_PRI_USER_ERROR = 0x03 # SBE_SEC_MEM_REGION_NOT_FOUND = 0x15 - testMemProcUtil.setUnsecureMemRegion(0x07000070, 0x10, 0x0120, 0x00030015) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x70, 0x10, 0x0120, 0x00030015) # Test case 7: remove a window in between - adding it again should pass testcase = 7 - testMemProcUtil.setUnsecureMemRegion(0x07000020, 0x10, 0x0120, 0) - testMemProcUtil.setUnsecureMemRegion(0x07000020, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x20, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x20, 0x10, 0x0111, 0) # Test case 8: remove all and open again to validate removal testcase = 8 # 1 @@ -96,134 +98,134 @@ def main(): # failed - response expected - # SBE_PRI_USER_ERROR = 0x03 # SBE_SEC_MEM_REGION_AMEND_ATTEMPTED = 0x17 - testMemProcUtil.setUnsecureMemRegion(0x06FFFFF0, 0x20, 0x0111, 0x00030017) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS-0x10, 0x20, 0x0111, 0x00030017) # 2 - testMemProcUtil.setUnsecureMemRegion(0x07000000, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS, 0x10, 0x0120, 0) # 3 - testMemProcUtil.setUnsecureMemRegion(0x07000010, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x10, 0x10, 0x0120, 0) # 4 - testMemProcUtil.setUnsecureMemRegion(0x07000020, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x20, 0x10, 0x0120, 0) # 5 - testMemProcUtil.setUnsecureMemRegion(0x07000030, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x30, 0x10, 0x0120, 0) # 6 - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x10, 0x0120, 0) # 7 - testMemProcUtil.setUnsecureMemRegion(0x07000050, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x50, 0x10, 0x0120, 0) # 8 - testMemProcUtil.setUnsecureMemRegion(0x07000060, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x10, 0x0120, 0) # 1 testMemProcUtil.setUnsecureMemRegion(0x08000000, 0x2000, 0x0112, 0) # 2 - testMemProcUtil.setUnsecureMemRegion(0x07000000, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS, 0x10, 0x0111, 0) testcase = "8: new window subsuming exsiting windows" # failed - response expected - # SBE_PRI_USER_ERROR = 0x03 # SBE_SEC_MEM_REGION_AMEND_ATTEMPTED = 0x17 - testMemProcUtil.setUnsecureMemRegion(0x06FFFFF0, 0x30, 0x0111, 0x00030017) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS-0x10, 0x30, 0x0111, 0x00030017) testcase = "8" # 3 - testMemProcUtil.setUnsecureMemRegion(0x07000010, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x10, 0x10, 0x0111, 0) # 4 - testMemProcUtil.setUnsecureMemRegion(0x07000020, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x20, 0x10, 0x0111, 0) # 5 - testMemProcUtil.setUnsecureMemRegion(0x07000030, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x30, 0x10, 0x0111, 0) # 6 - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x10, 0x0111, 0) # 7 - testMemProcUtil.setUnsecureMemRegion(0x07000050, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x50, 0x10, 0x0111, 0) # 8 - testMemProcUtil.setUnsecureMemRegion(0x07000060, 0x10, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x10, 0x0111, 0) # 9 - failed - response expected - # SBE_PRI_USER_ERROR = 0x03 # SBE_SEC_MAXIMUM_MEM_REGION_EXCEEDED = 0x16 - testMemProcUtil.setUnsecureMemRegion(0x07000070, 0x10, 0x0111, 0x00030016) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x70, 0x10, 0x0111, 0x00030016) # Cleanup - close all the windows open except the one for mem testcases # 2 - testMemProcUtil.setUnsecureMemRegion(0x07000000, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS, 0x10, 0x0120, 0) # 3 - testMemProcUtil.setUnsecureMemRegion(0x07000010, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x10, 0x10, 0x0120, 0) # 4 - testMemProcUtil.setUnsecureMemRegion(0x07000020, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x20, 0x10, 0x0120, 0) # 5 - testMemProcUtil.setUnsecureMemRegion(0x07000030, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x30, 0x10, 0x0120, 0) # 6 - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x10, 0x0120, 0) # 7 - testMemProcUtil.setUnsecureMemRegion(0x07000050, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x50, 0x10, 0x0120, 0) # 8 - testMemProcUtil.setUnsecureMemRegion(0x07000060, 0x10, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x10, 0x0120, 0) # Test case 9: access memory in unopened window - ADU testcase = 9 - testMemProcUtil.getmem_failure(0x07000060, 0x40, 0xA5, 0x00050014) + testMemProcUtil.getmem_failure(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x40, 0xA5, 0x00050014) # Test case 10: access memory in unopened window - PBA testcase = 10 - testMemProcUtil.getmem_failure(0x07000080, 0x80, 0x02, 0x00050014) + testMemProcUtil.getmem_failure(MEM_WINDOWS_BASE_ADDRESS+0x80, 0x80, 0x02, 0x00050014) # Test case 11: access memory spanning across two windows testcase = 11 - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x40, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x40, 0x0111, 0) testUtil.runCycles(100000) - testMemProcUtil.setUnsecureMemRegion(0x07000080, 0x40, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x80, 0x40, 0x0111, 0) testUtil.runCycles(100000) - testMemProcUtil.setUnsecureMemRegion(0x070000C0, 0x40, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0xC0, 0x40, 0x0111, 0) testUtil.runCycles(1000000) # start and end on edges - testMemProcUtil.getmem(0x07000040, 0x80, 0xA5) + testMemProcUtil.getmem(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x80, 0xA5) testUtil.runCycles(100000) # start in between and end on edge - testMemProcUtil.getmem(0x07000060, 0x60, 0xA5) + testMemProcUtil.getmem(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x60, 0xA5) testUtil.runCycles(100000) # start on edge and end in between - testMemProcUtil.getmem(0x07000040, 0x60, 0xA5) + testMemProcUtil.getmem(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x60, 0xA5) testUtil.runCycles(100000) # start on edge and end in between - 3rd window - testMemProcUtil.getmem(0x07000040, 0xA0, 0xA5) + testMemProcUtil.getmem(MEM_WINDOWS_BASE_ADDRESS+0x40, 0xA0, 0xA5) testUtil.runCycles(100000) - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x40, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x40, 0x0120, 0) testUtil.runCycles(100000) - testMemProcUtil.setUnsecureMemRegion(0x07000080, 0x40, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x80, 0x40, 0x0120, 0) testUtil.runCycles(100000) - testMemProcUtil.setUnsecureMemRegion(0x070000C0, 0x40, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0xC0, 0x40, 0x0120, 0) testUtil.runCycles(100000) # Test case 12: read access in read-write window - ADU testcase = 12 - testMemProcUtil.setUnsecureMemRegion(0x07000080, 128, 0x0112, 0) - testMemProcUtil.getmem(0x07000080, 128, 0xA5) - testMemProcUtil.setUnsecureMemRegion(0x07000080, 128, 0x0120, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x80, 128, 0x0112, 0) + testMemProcUtil.getmem(MEM_WINDOWS_BASE_ADDRESS+0x80, 128, 0xA5) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x80, 128, 0x0120, 0) # Test case 13: read access in read-write window - PBA testcase = 13 testMemProcUtil.getmem(0x08000080, 128, 0x02) # Test case 14: write access in read-only window - ADU testcase = 14 - testMemProcUtil.setUnsecureMemRegion(0x07000080, 128, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x80, 128, 0x0111, 0) data = os.urandom(8) data = [ord(c) for c in data] - testMemProcUtil.putmem_failure(0x07000080, data, 0xA5, 0x00050014) + testMemProcUtil.putmem_failure(MEM_WINDOWS_BASE_ADDRESS+0x80, data, 0xA5, 0x00050014) # Test case 15: write access in read-only window - PBA testcase = 15 data = os.urandom(128) data = [ord(c) for c in data] - testMemProcUtil.putmem_failure(0x07000080, data, 0x02, 0x00050014) - testMemProcUtil.setUnsecureMemRegion(0x07000080, 128, 0x0120, 0) + testMemProcUtil.putmem_failure(MEM_WINDOWS_BASE_ADDRESS+0x80, data, 0x02, 0x00050014) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x80, 128, 0x0120, 0) # Test case 16: access memory for which a partial window is open testcase = 16 testUtil.runCycles(1000000) - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x30, 0x0111, 0) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x30, 0x0111, 0) # start in between and end outside testUtil.runCycles(1000000) - testMemProcUtil.getmem_failure(0x07000060, 0x40, 0xA5, 0x00050014) + testMemProcUtil.getmem_failure(MEM_WINDOWS_BASE_ADDRESS+0x60, 0x40, 0xA5, 0x00050014) # start on edge and end outside testUtil.runCycles(1000000) - testMemProcUtil.getmem_failure(0x07000040, 0x40, 0xA5, 0x00050014) + testMemProcUtil.getmem_failure(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x40, 0xA5, 0x00050014) # start and end within testUtil.runCycles(1000000) - testMemProcUtil.getmem(0x07000050, 0x10, 0xA5) - testMemProcUtil.setUnsecureMemRegion(0x07000040, 0x30, 0x0120, 0) + testMemProcUtil.getmem(MEM_WINDOWS_BASE_ADDRESS+0x50, 0x10, 0xA5) + testMemProcUtil.setUnsecureMemRegion(MEM_WINDOWS_BASE_ADDRESS+0x40, 0x30, 0x0120, 0) except: print "FAILED Test Case:"+str(testcase) raise Exception('Failure') -- cgit v1.2.1