help="The command to use to start the debug server (e.g. OpenOCD)")
xlen_group = parser.add_mutually_exclusive_group()
- xlen_group.add_argument("--32", action="store_const", const=32, dest="xlen",
+ xlen_group.add_argument("--32", action="store_const", const=32, dest="xlen", default=0,
help="Force the target to be 32-bit.")
- xlen_group.add_argument("--64", action="store_const", const=64, dest="xlen",
+ xlen_group.add_argument("--64", action="store_const", const=64, dest="xlen", default=0,
help="Force the target to be 64-bit.")
parser.add_argument("--isolate", action="store_true",
t = found[0](parsed.target, parsed)
assert t.harts, "%s doesn't have any harts defined!" % t.name
- for h in t.harts :
- if (h.xlen == 0):
- h.xlen = parsed.xlen
- elif (h.xlen != parsed.xlen):
- raise Exception("The target has an XLEN of %d, but the command line specified an XLEN of %d. They must match." % (h.xlen, parsed.xlen))
+ if (parsed.xlen > 0):
+ for h in t.harts :
+ if (h.xlen == 0):
+ h.xlen = parsed.xlen
+ elif (h.xlen != parsed.xlen):
+ raise Exception("The target hart specified an XLEN of %d, but the command line specified an XLEN of %d. They must match." % (h.xlen, parsed.xlen))
return t