Skip to content

Commit

Permalink
Allow passing prebuilt bitstream when running applets
Browse files Browse the repository at this point in the history
  • Loading branch information
marcan committed Jul 26, 2019
1 parent 94091a2 commit fa0e833
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions software/glasgow/cli.py
Expand Up @@ -200,11 +200,10 @@ def add_toolchain_args(parser):
"--trace", metavar="FILENAME", type=argparse.FileType("wt"), default=None,
help="trace applet I/O to FILENAME")

g_run_bitstream = p_run.add_mutually_exclusive_group(required=True)
g_run_bitstream.add_argument(
p_run.add_argument(
"--bitstream", metavar="FILENAME", type=argparse.FileType("rb"),
help="read bitstream from the specified file")
add_applet_arg(g_run_bitstream, mode="run")
add_applet_arg(p_run, mode="run")

p_tool = subparsers.add_parser(
"tool", formatter_class=TextHelpFormatter,
Expand Down Expand Up @@ -425,8 +424,13 @@ async def _main():
target, applet = _applet(device.revision, args)
device.demultiplexer = DirectDemultiplexer(device, target.multiplexer.pipe_count)

await device.download_target(target, rebuild=args.rebuild,
toolchain_opts=_toolchain_opts(args))
if args.bitstream:
with args.bitstream as f:
logger.info("downloading bitstream from %r", f.name)
await device.download_bitstream(f.read())
else:
await device.download_target(target, rebuild=args.rebuild,
toolchain_opts=_toolchain_opts(args))

if args.trace:
logger.info("starting applet analyzer")
Expand Down

0 comments on commit fa0e833

Please sign in to comment.