Skip to content
Snippets Groups Projects
Commit a5e91a5f authored by Kenneth Hiemstra's avatar Kenneth Hiemstra
Browse files

changed the --cmd 0,1,2,3... enumuration list to --seq REGMAP,INFO,WDI,...

parent be463d78
No related branches found
No related tags found
No related merge requests found
...@@ -74,12 +74,20 @@ def show_compare_arrays(tc,a,b): ...@@ -74,12 +74,20 @@ def show_compare_arrays(tc,a,b):
tc.append_log(5, 'Result:\n%s' % compared) tc.append_log(5, 'Result:\n%s' % compared)
return (not False in compared) return (not False in compared)
def test_BG_to_DB(tc,io,cmd,use_pps=False): def test_BG_to_DB(tc,io,cmd):
tc.set_section_id('Test BG - ') tc.set_section_id('Test BG - ')
tc.append_log(3, '>>>') tc.append_log(3, '>>>')
tc.append_log(1, '>>> %s' % help_text(tc,io,cmd)) tc.append_log(1, '>>> %s' % help_text(tc,io,cmd))
tc.append_log(3, '>>>') tc.append_log(3, '>>>')
if tc.number == 1:
use_pps=True
tc.append_log(1, '>>> Using PPS')
else:
use_pps=False
tc.append_log(1, '>>> NOT Using PPS')
if use_pps==True: ppsh = pi_ppsh.PiPpsh(tc, io) if use_pps==True: ppsh = pi_ppsh.PiPpsh(tc, io)
tc.set_section_id('Read - ') tc.set_section_id('Read - ')
...@@ -143,10 +151,6 @@ def test_BG_to_DB(tc,io,cmd,use_pps=False): ...@@ -143,10 +151,6 @@ def test_BG_to_DB(tc,io,cmd,use_pps=False):
show_compare_arrays(tc,bg_ram,db_ram) show_compare_arrays(tc,bg_ram,db_ram)
Bg.write_disable() Bg.write_disable()
def test_BG_to_DB_pps(tc,io,cmd):
return test_BG_to_DB(tc,io,cmd,use_pps=True)
def test_tr_xaui(tc,io,cmd): def test_tr_xaui(tc,io,cmd):
tc.set_section_id('Read tr xaui status - ') tc.set_section_id('Read tr xaui status - ')
...@@ -264,6 +268,8 @@ def test_wdi(tc,io,cmd): ...@@ -264,6 +268,8 @@ def test_wdi(tc,io,cmd):
Wdi = pi_wdi.PiWdi(tc, io) Wdi = pi_wdi.PiWdi(tc, io)
Wdi.write_wdi_override() Wdi.write_wdi_override()
tc.append_log(3, '') tc.append_log(3, '')
tc.append_log(3, '>>> Booting...')
tc.sleep(5.0)
...@@ -285,6 +291,8 @@ def test_remu(tc,io,cmd): ...@@ -285,6 +291,8 @@ def test_remu(tc,io,cmd):
if dummy_tc.get_result() == 'FAILED': if dummy_tc.get_result() == 'FAILED':
tc.append_log(1, 'Result=%s but ignoring this' % dummy_tc.get_result()) tc.append_log(1, 'Result=%s but ignoring this' % dummy_tc.get_result())
tc.append_log(3, '>>> Booting...')
tc.sleep(5.0)
tc.append_log(3, '') tc.append_log(3, '')
...@@ -325,63 +333,55 @@ def test_flash(tc,io,cmd): ...@@ -325,63 +333,55 @@ def test_flash(tc,io,cmd):
def sleep(tc,io,cmd): def sleep(tc,io,cmd):
tc.set_section_id('%s - ' % cmd_text(cmd)) tc.set_section_id('%s - ' % cmd)
tc.append_log(1, '>>> %s' % help_text(tc,io,cmd)) tc.append_log(1, '>>> %s' % help_text(tc,io,cmd))
if cmd == 0: if cmd == 'sleep1':
tc.sleep(1.0) tc.sleep(1.0)
elif cmd == 1: elif cmd == 'sleep5':
tc.sleep(5.0) tc.sleep(5.0)
def show_help(tc,io,cmd): def show_help(tc,io,cmd):
help_text(tc,io,100) tc.set_section_id('%s - ' % cmd)
def show_example(tc,io,cmd):
tc.append_log(1, '>>> %s' % help_text(tc,io,cmd)) tc.append_log(1, '>>> %s' % help_text(tc,io,cmd))
help_text(tc,io,101)
# Avaliable commands # Avaliable commands
Cmd = { Cmd = dict()
0 : ('SLEEP1' , sleep, 'Sleep 1 second',''), Cmd['REGMAP'] = (read_regmap, 'using pi_system_info to read register info (access PIO_SYSTEM_INFO) and store REGMAPs','')
1 : ('SLEEP5' , sleep, 'Sleep 5 seconds',''), Cmd['INFO'] = (test_info, 'using pi_system_info to read system info (access PIO_SYSTEM_INFO)','(-s for expected design_name)')
2 : ('REGMAP' , read_regmap, 'using pi_system_info to read register info (access PIO_SYSTEM_INFO) and store REGMAPs',''), Cmd['FLASH'] = (test_flash, 'using pi_epcs to program/verify flash','(-s for .rbf file)')
3 : ('INFO' , test_info, 'using pi_system_info to read system info (access PIO_SYSTEM_INFO)','(-s for expected design_name)'), Cmd['SENSORS'] = (test_sensors, 'using pi_unb_sens to readout sensors (access REG_UNB_SENS)','')
4 : ('FLASH' , test_flash, 'using pi_epcs to program/verify flash','(-s for .rbf file)'), Cmd['PPSH'] = (test_ppsh, 'using pi_ppsh to read PPSH capture count (access PIO_PPS)','')
5 : ('SENSORS', test_sensors, 'using pi_unb_sens to readout sensors (access REG_UNB_SENS)',''), Cmd['ETH'] = (test_eth, 'using pi_eth to read eth status','')
6 : ('PPSH' , test_ppsh, 'using pi_ppsh to read PPSH capture count (access PIO_PPS)',''), Cmd['REMU'] = (test_remu, 'using pi_remu to load user image (access REG_REMU)','')
7 : ('ETH' , test_eth, 'using pi_eth to read eth status',''), Cmd['WDI'] = (test_wdi, 'using pi_wdi to reset to image in bank 0 (access REG_WDI)','')
8 : ('REMU' , test_remu, 'using pi_remu to load user image (access REG_REMU)',''), Cmd['XAUI'] = (test_tr_xaui, 'using pi_tr_xaui to read xaui status (access REG_TR_XAUI)','')
9 : ('WDI' , test_wdi, 'using pi_wdi to reset to image in bank 0 (access REG_WDI)',''), Cmd['10GBE'] = (test_tr_10GbE,'using pi_tr_10GbE to read 10GbE status (access REG_TR_10GBE)','')
10 : ('XAUI' , test_tr_xaui, 'using pi_tr_xaui to read xaui status (access REG_TR_XAUI)',''), Cmd['BSN'] = (test_bsn_mon, 'using pi_bsn_monitor to read BSN monitor (access REG_BSN_MONITOR)','')
11 : ('10GBE' , test_tr_10GbE,'using pi_tr_10GbE to read 10GbE status (access REG_TR_10GBE)',''), Cmd['BGDB'] = (test_BG_to_DB,'using BG (pi_diag_block_gen.py) and DB (pi_diag_data_buffer.py)','(--sp for addressing streams, -n1 for use pps)')
12 : ('BSN' , test_bsn_mon, 'using pi_bsn_monitor to read BSN monitor (access REG_BSN_MONITOR)',''), Cmd['sleep1'] = (sleep, 'Sleep 1 second','')
13 : ('BGDB' , test_BG_to_DB,'using BG (pi_diag_block_gen.py) and DB (pi_diag_data_buffer.py)','(--sp for addressing streams)'), Cmd['sleep5'] = (sleep, 'Sleep 5 seconds','')
14 : ('BGDBpps', test_BG_to_DB_pps,'using BG (pi_diag_block_gen.py) and DB (pi_diag_data_buffer.py) using PPS','(--sp for addressing streams)'), Cmd['example'] = (show_help, 'show several example commands','')
15 : ('EXAMPLE', show_example, 'show several example commands',''), Cmd['help'] = (show_help, 'show help on commands','')
100 : ('HELP' , show_help, 'show help on commands','')
}
def cmd_text(cmd):
return Cmd[cmd][0]
def help_text(tc,io,cmd): def help_text(tc,io,cmd):
str='' str=''
if cmd == 100: if cmd == 'help':
tc.append_log(0, '>>> Usage [--cmd <command number or series of numbers>]:') tc.append_log(0, '>>> Usage [--seq <command(s) separated by ",">]:')
for cmd in sorted(Cmd): for cmd in sorted(Cmd):
tc.append_log(0, ' . %d : %s: %s : %s' % (cmd,Cmd[cmd][0],Cmd[cmd][2],Cmd[cmd][3])) tc.append_log(0, ' . %s\t%s %s' % (cmd,Cmd[cmd][1],Cmd[cmd][2]))
elif cmd == 101: # examples elif cmd == 'example':
tc.append_log(0, '') tc.append_log(0, '')
tc.append_log(0, '[reset, load user img] sequence: --cmd 2,9,1,2,9,1,2,8,1,2') tc.append_log(0, '[reset, load user img] sequence: --seq REGMAP,WDI,REGMAP,REMU,REGMAP,INFO')
# ^fact ^fact ^user tc.append_log(0, '[flash+start user img] sequence: --seq FLASH,WDI,REGMAP,REMU,REGMAP,INFO -s file.rbf')
tc.append_log(0, '[flash+start user img] sequence: --cmd 2,4,9,1,2,8,1,2 -s file.rbf') tc.append_log(0, '[re-read info,sensors] sequence: --seq INFO,PPSH,SENSORS --rep 10 -s expected_design_name')
# ^fact ^user tc.append_log(0, '[reset to factory] sequence: --seq WDI,REGMAP')
tc.append_log(0, '[re-read info,sensors] sequence: --cmd 3,5,6 --rep 10 -s expected_design_name') tc.append_log(0, '[program user image] sequence: --seq FLASH -s file.rbf')
tc.append_log(0, '[reset to factory] sequence: --cmd 2,9,1,2') tc.append_log(0, '[load user image] sequence: --seq REMU,REGMAP')
tc.append_log(0, '[program user image] sequence: --cmd 4 -s file.rbf') tc.append_log(0, '[modelsim BG-DB test] arguments: --unb 0 --fn 0 --seq BGDB --sim --sp 0:2')
tc.append_log(0, '[load user image] sequence: --cmd 8,1,2')
else: else:
str = Cmd[cmd][2] str = Cmd[cmd][1]
return str return str
...@@ -395,15 +395,13 @@ tc = test_case.Testcase('TB - ', '') ...@@ -395,15 +395,13 @@ tc = test_case.Testcase('TB - ', '')
tc.set_result('PASSED') tc.set_result('PASSED')
dgnName = tc.gpString dgnName = tc.gpString
tc.append_log(3, '>>>') tc.append_log(3, '>>>')
tc.append_log(1, '>>> Title : Test bench for tc_unb1_test.py on nodes %s, %s' % (tc.unb_nodes_string(''),dgnName)) tc.append_log(1, '>>> Title : Test bench (%s) on nodes %s, %s' % (sys.argv[0],tc.unb_nodes_string(''),dgnName))
tc.append_log(3, '>>>') tc.append_log(3, '>>>')
# Create access object for nodes # Create access object for nodes
io = node_io.NodeIO(tc.nodeImages, tc.base_ip) io = node_io.NodeIO(tc.nodeImages, tc.base_ip)
################################################################################################################## ##################################################################################################################
# Run tests # Run tests
rep = 0 rep = 0
...@@ -412,15 +410,21 @@ while rep < tc.repeat: ...@@ -412,15 +410,21 @@ while rep < tc.repeat:
tc.append_log(3, '') tc.append_log(3, '')
tc.append_log(2, 'Rep = %d' % rep) tc.append_log(2, 'Rep = %d' % rep)
for cmd in tc.commands: try:
if cmd > len(Cmd): cmd = 100 # default to help_text for cmd in tc.sequence:
tc.append_log(3, 'Next command: %d : %s: %s' % (cmd,Cmd[cmd][0],Cmd[cmd][2])) tc.append_log(3, 'Next command: %s : %s: %s' % (cmd,Cmd[cmd][1],Cmd[cmd][2]))
if cmd == 2: # reload node_io: if cmd == 'INFO': # reload node_io:
io = Cmd[cmd][1](tc,io,cmd) io = Cmd[cmd][0](tc,io,cmd)
else: else:
Cmd[cmd][1](tc,io,cmd) Cmd[cmd][0](tc,io,cmd)
except KeyError:
print 'Unknown command:',cmd
cmd='help'
Cmd[cmd][0](tc,io,cmd)
except:
print 'Catched error:',sys.exc_info()[0]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment