diff options
author | Megan Wachs <megan@sifive.com> | 2017-08-14 10:58:22 -0700 |
---|---|---|
committer | Megan Wachs <megan@sifive.com> | 2017-08-14 10:58:22 -0700 |
commit | b9bb681d565fea9ffaafa5bfae39cbfd627b1567 (patch) | |
tree | 4de28e40796c0105933bd87218a03995123d2888 /debug/testlib.py | |
parent | d4ddf772abf13e0fcd02d8c1fd7ffb34560873d0 (diff) | |
download | riscv-tests-b9bb681d565fea9ffaafa5bfae39cbfd627b1567.zip riscv-tests-b9bb681d565fea9ffaafa5bfae39cbfd627b1567.tar.gz riscv-tests-b9bb681d565fea9ffaafa5bfae39cbfd627b1567.tar.bz2 |
debug: Allow OpenOCD startup timeout to be specified. Print out path to log files.
Diffstat (limited to 'debug/testlib.py')
-rw-r--r-- | debug/testlib.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/debug/testlib.py b/debug/testlib.py index b81b4cd..d860533 100644 --- a/debug/testlib.py +++ b/debug/testlib.py @@ -161,8 +161,9 @@ class VcsSim(object): class Openocd(object): logfile = tempfile.NamedTemporaryFile(prefix='openocd', suffix='.log') logname = logfile.name + print "OpenOCD Temp Logfile: %s " % logname - def __init__(self, server_cmd=None, config=None, debug=False): + def __init__(self, server_cmd=None, config=None, debug=False, timeout=60): if server_cmd: cmd = shlex.split(server_cmd) else: @@ -196,7 +197,7 @@ class Openocd(object): if debug: cmd.append("-d") - logfile = open(Openocd.logname, "w") + logfile = Openocd.logfile logfile.write("+ %s\n" % " ".join(cmd)) logfile.flush() self.process = subprocess.Popen(cmd, stdin=subprocess.PIPE, @@ -223,7 +224,7 @@ class Openocd(object): if not messaged and time.time() - start > 1: messaged = True print "Waiting for OpenOCD to start..." - if time.time() - start > 60: + if (time.time() - start) > timeout: raise Exception("ERROR: Timed out waiting for OpenOCD to " "listen for gdb") @@ -276,11 +277,11 @@ Thread = collections.namedtuple('Thread', ('id', 'target_id', 'name', class Gdb(object): logfile = tempfile.NamedTemporaryFile(prefix="gdb", suffix=".log") logname = logfile.name + print "GDB Temporary file: %s" % logname def __init__(self, cmd=os.path.expandvars("$RISCV/bin/riscv64-unknown-elf-gdb")): self.child = pexpect.spawn(cmd) - self.child.logfile = open(self.logname, "w") self.child.logfile.write("+ %s\n" % cmd) self.wait() self.command("set confirm off") |