forked from M-Labs/artiq
29 lines
820 B
Plaintext
29 lines
820 B
Plaintext
|
#!/usr/bin/env python3
|
||
|
|
||
|
import argparse
|
||
|
from artiq.devices import corecom_serial
|
||
|
|
||
|
|
||
|
def main():
|
||
|
parser = argparse.ArgumentParser(description="Core device ELF loading tool")
|
||
|
parser.add_argument("-e", default=False, action="store_true",
|
||
|
help="show environment")
|
||
|
parser.add_argument("-f", default="run",
|
||
|
help="function to run")
|
||
|
parser.add_argument("file",
|
||
|
help="ELF binary to load")
|
||
|
args = parser.parse_args()
|
||
|
|
||
|
with open(args.file, "rb") as f:
|
||
|
binary = f.read()
|
||
|
with corecom_serial.CoreCom() as com:
|
||
|
runtime_env = com.get_runtime_env()
|
||
|
if args.e:
|
||
|
print(runtime_env)
|
||
|
com.load(binary)
|
||
|
com.run(args.f)
|
||
|
com.serve(dict(), dict())
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
main()
|