From 8741aef09939f7775cb66058c59cbc8e321f4372 Mon Sep 17 00:00:00 2001 From: Alejandro Soto Date: Wed, 4 Oct 2023 17:57:45 -0600 Subject: sim: implement flag overrides in environment --- sim/gdbstub.py | 1 - sim/sim.py | 13 ++++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'sim') diff --git a/sim/gdbstub.py b/sim/gdbstub.py index 3bd078c..88477be 100644 --- a/sim/gdbstub.py +++ b/sim/gdbstub.py @@ -6,7 +6,6 @@ loads = {0x0100000: 'build/uImage', cycles = None enable_tty = True -enable_video = True start_halted = True sock, client = None, None diff --git a/sim/sim.py b/sim/sim.py index e1dbd41..4b3871e 100755 --- a/sim/sim.py +++ b/sim/sim.py @@ -214,6 +214,13 @@ def hexdump(base, memory): def module_get(attr, default=None): return getattr(module, attr, default) if module else None +def module_or_env_bool(var): + value = os.getenv(var.upper()) + if value is not None: + return bool(int(value)) + + return module_get(var, False) + COLOR_RESET = '\033[0m' COLOR_RED = '\033[31;1m' COLOR_GREEN = '\033[32m' @@ -367,10 +374,10 @@ cycles = module_get('cycles', 1024) if cycles is not None: exec_args.extend(['--cycles', str(cycles)]) -if not module_get('enable_tty', False): +if not module_or_env_bool('enable_tty'): exec_args.append('--no-tty') -if not module_get('enable_video', False): +if not module_or_env_bool('enable_video'): exec_args.append('--headless') for rng in mem_dumps: @@ -389,7 +396,7 @@ for addr, const in module_get('consts', {}).items(): for addr, filename in module_get('loads', {}).items(): exec_args.extend(['--load', f'{addr},{filename}']) -if module_get('start_halted', False): +if module_or_env_bool('start_halted'): exec_args.append('--start-halted') sim_end_sock, target_end = socket.socketpair() -- cgit v1.2.3