mcu: Avoid altering self.TIMEOUT_TIME in RetryAsyncCommand

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2025-07-11 10:52:27 -04:00
parent 2585accfeb
commit 697c6e8d28

View File

@ -35,16 +35,16 @@ class RetryAsyncCommand:
cmd, = cmds cmd, = cmds
self.serial.raw_send_wait_ack(cmd, minclock, reqclock, cmd_queue) self.serial.raw_send_wait_ack(cmd, minclock, reqclock, cmd_queue)
self.min_query_time = 0. self.min_query_time = 0.
first_query_time = query_time = self.reactor.monotonic() timeout_time = query_time = self.reactor.monotonic()
if not retry: if retry:
self.TIMEOUT_TIME=.0 timeout_time += self.TIMEOUT_TIME
while 1: while 1:
params = self.completion.wait(query_time + self.RETRY_TIME) params = self.completion.wait(query_time + self.RETRY_TIME)
if params is not None: if params is not None:
self.serial.register_response(None, self.name, self.oid) self.serial.register_response(None, self.name, self.oid)
return params return params
query_time = self.reactor.monotonic() query_time = self.reactor.monotonic()
if query_time > first_query_time + self.TIMEOUT_TIME: if query_time > timeout_time:
self.serial.register_response(None, self.name, self.oid) self.serial.register_response(None, self.name, self.oid)
raise serialhdl.error("Timeout on wait for '%s' response" raise serialhdl.error("Timeout on wait for '%s' response"
% (self.name,)) % (self.name,))