diff options
-rwxr-xr-x | tools/gr-usrptest/apps/usrp_fpga_funcverif.py | 132 |
1 files changed, 131 insertions, 1 deletions
diff --git a/tools/gr-usrptest/apps/usrp_fpga_funcverif.py b/tools/gr-usrptest/apps/usrp_fpga_funcverif.py index 99e8e10d7..521fd1aaa 100755 --- a/tools/gr-usrptest/apps/usrp_fpga_funcverif.py +++ b/tools/gr-usrptest/apps/usrp_fpga_funcverif.py @@ -387,10 +387,129 @@ FUNCVERIF_SETTINGS = { '--duration': 3600, '--underrun-threshold': 1000, '--overrun-threshold': 1000,}, ], }, + 'x3x0_10gige': { + '--args': "type=x300,addr={addr},{args}", + '--seq-threshold': 0, + '--drop-threshold': 0, + '--underrun-threshold': 100, + '--overrun-threshold': 100, + '--duration': 60, + '__tests': [ + {'--rx_rate': 10e6, '--channels': '0'}, + {'--rx_rate': 50e6, '--channels': '0'}, + {'--rx_rate': 100e6, '--channels': '0'}, + {'--rx_rate': 200e6, '--channels': '0'}, + {'--rx_rate': 10e6, '--channels': '1'}, + {'--rx_rate': 50e6, '--channels': '1'}, + {'--rx_rate': 100e6, '--channels': '1'}, + {'--rx_rate': 200e6, '--channels': '1'}, + + {'--rx_rate': 10e6, '--channels': '0,1'}, + {'--rx_rate': 50e6, '--channels': '0,1'}, + {'--rx_rate': 100e6, '--channels': '0,1'}, + + {'--tx_rate': 10e6, '--channels': '0'}, + {'--tx_rate': 50e6, '--channels': '0'}, + {'--tx_rate': 100e6, '--channels': '0'}, + {'--tx_rate': 200e6, '--channels': '0'}, + {'--tx_rate': 10e6, '--channels': '1'}, + {'--tx_rate': 50e6, '--channels': '1'}, + {'--tx_rate': 100e6, '--channels': '1'}, + {'--tx_rate': 200e6, '--channels': '1'}, + + {'--tx_rate': 10e6, '--channels': '0,1'}, + {'--tx_rate': 50e6, '--channels': '0,1'}, + {'--tx_rate': 100e6, '--channels': '0,1'}, + + {'--rx_rate': 10e6, '--tx_rate': 10e6}, + {'--rx_rate': 50e6, '--tx_rate': 50e6}, + {'--rx_rate': 100e6, '--tx_rate': 100e6}, + + {'--rx_rate': 200e6, '--tx_rate': 200e6, '--channels': 0}, + + {'--rx_rate': 10e6, '--tx_rate': 10e6, '--channels': '0,1'}, + {'--rx_rate': 50e6, '--tx_rate': 50e6, '--channels': '0,1'}, + + {'--rx_rate': 200e6, '--tx_rate': 200e6, '--channels': '1', '--duration': 3600}, + {'--rx_rate': 100e6, '--tx_rate': 100e6, '--channels': '0,1', '--duration': 3600} + ], + }, + 'x3x0_1gige': { + '--args': "type=x300,addr={second_addr},{args}", + '--seq-threshold': 0, + '--drop-threshold': 0, + '--underrun-threshold': 100, + '--overrun-threshold': 100, + '--duration': 60, + '__tests': [ + {'--rx_rate': 1e6, '--channels': '0'}, + {'--rx_rate': 10e6, '--channels': '0'}, + {'--rx_rate': 25e6, '--channels': '0'}, + {'--rx_rate': 1e6, '--channels': '0,1'}, + {'--rx_rate': 10e6, '--channels': '0,1'}, + + {'--tx_rate': 1e6, '--channels': '0'}, + {'--tx_rate': 10e6, '--channels': '0'}, + {'--tx_rate': 25e6, '--channels': '0'}, + {'--tx_rate': 1e6, '--channels': '0,1'}, + {'--tx_rate': 10e6, '--channels': '0,1'}, + + {'--rx_rate': 1e6 , '--tx_rate': 1e6}, + {'--rx_rate': 10e6, '--tx_rate': 10e6}, + {'--rx_rate': 25e6, '--tx_rate': 25e6}, + {'--rx_rate': 1e6, '--tx_rate': 1e6, '--channels': '0,1'}, + {'--rx_rate': 10e6, '--tx_rate': 10e6, '--channels': '0,1'}, + ], + }, + 'x3x0_pcie': { + '--args': "type=x300,resource={resource},{args}", + '--seq-threshold': 0, + '--drop-threshold': 0, + '--underrun-threshold': 100, + '--overrun-threshold': 100, + '--duration': 60, + '__tests': [ + {'--rx_rate': 10e6, '--channels': '0'}, + {'--rx_rate': 50e6, '--channels': '0'}, + {'--rx_rate': 100e6, '--channels': '0'}, + {'--rx_rate': 200e6, '--channels': '0'}, + {'--rx_rate': 10e6, '--channels': '0,1'}, + {'--rx_rate': 50e6, '--channels': '0,1'}, + {'--rx_rate': 100e6, '--channels': '0,1'}, + + {'--tx_rate': 10e6, '--channels': '0'}, + {'--tx_rate': 50e6, '--channels': '0'}, + {'--tx_rate': 100e6, '--channels': '0'}, + {'--tx_rate': 200e6, '--channels': '0'}, + {'--tx_rate': 10e6, '--channels': '0,1'}, + {'--tx_rate': 50e6, '--channels': '0,1'}, + {'--tx_rate': 100e6, '--channels': '0,1'}, + + {'--rx_rate': 10e6, '--tx_rate': 10e6}, + {'--rx_rate': 50e6, '--tx_rate': 50e6}, + {'--rx_rate': 100e6,'--tx_rate': 100e6}, + {'--rx_rate': 200e6,'--tx_rate': 200e6}, + + {'--rx_rate': 10e6, '--tx_rate': 10e6, '--channels': '0,1'}, + {'--rx_rate': 50e6, '--tx_rate': 50e6, '--channels': '0,1'}, + ], + }, + 'x3x0_2x_10gige': { + '--args': "type=n3xx,addr={addr},second_addr={second_addr},{args}", + '--seq-threshold': 0, + '--drop-threshold': 0, + '--underrun-threshold': 100, + '--overrun-threshold': 100, + '--duration': 60, + '__tests': [ + {'--rx_rate': 200e6, '--channels': '0,1'}, + ], + }, } #Map Device & FPGA Image to tests that must be performed. DEV_TO_TEST = { + #n300 'n300xg': ['n300_10gige', 'n300_2x_10gige'], 'n300hg': ['n300_1gige', 'n300_10gige'], 'n300ha': ['n300_1gige'], @@ -406,7 +525,14 @@ DEV_TO_TEST = { 'n300_2x_10gige': ['n300_2x_10gige'], 'n310_1gige': ['n310_1gige'], 'n310_10gige': ['n310_10gige'], - 'n310_2x_10gige': ['n310_2x_10gige'] + 'n310_2x_10gige': ['n310_2x_10gige'], + #x300 + 'x3x0hg': ['x3x0_1gige', 'x3x0_10gige', 'x3x0_pcie'], + 'x3x0xg': ['x3x0_10gige', 'x3x0_2x_10gige', 'x3x0_pcie'], + 'x3x0_1gige': ['x3x0_1gige'], + 'x3x0_10gige': ['x3x0_10gige'], + 'x3x0_2x_10gige': ['x3x0_2x_10gige'], + 'x3x0_pcie': ['x3x0_pcie'], } def parse_args(): @@ -440,6 +566,9 @@ def parse_args(): '-s', '--sleep', type=int, default=30, help="Sleep time between tests", ) parser.add_argument( + '-r', '--resource', help="PCIe resource on x3x0" + ) + parser.add_argument( '--args' ) return parser.parse_args() @@ -513,6 +642,7 @@ def run_tests(args, settings, num_tests, tests_run): 'addr': args.addr, 'second_addr': args.second_addr, 'args': args.args, + 'resource': args.resource }) print("Preparing to execute {} tests...".format(num_tests)) all_good = True |