Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 9 additions & 6 deletions template/Board/Corstone-300/vsi/python/sdsio.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
# ---------------------------------------------------------------------------- #
# SDSIO server-compatible stream implementation #
# ---------------------------------------------------------------------------- #
SDSIO_VSI_VERSION = "3.0.1-dev2"
SDSIO_VSI_VERSION = "3.0.1-dev5"

class StreamInfo(NamedTuple):
name: str = None
Expand Down Expand Up @@ -269,7 +269,7 @@ def __init__(
if monitor_factory:
self._monitor = monitor_factory(self._mon_port, self._flags)
self._ctrl_input = None
if control_input_factory is not False:
if control_input_factory is not False and sys.stdin.isatty():
if control_input_factory is None:
control_input_factory = sdsControlInput
if control_input_factory:
Expand Down Expand Up @@ -501,7 +501,8 @@ def _request_auto_playback_if_needed(self, target_flags: Optional[int] = None):
self._flags.request_auto_playback_start()
elif self._flags.auto_playback and self._last_playback_stream_name:
if self._flags.request_auto_playback_terminate():
logger.info("Playback complete - no more steps remaining.")
_complete_msg = "Playback complete - no more steps remaining." if self._play_list else "Playback complete."
logger.info(_complete_msg)
if self._exit_after_playback:
logger.info("SDSIO-Server terminating (playback complete).")
self._send_ci_terminate_on_shutdown = True
Expand Down Expand Up @@ -540,6 +541,7 @@ def _open(self, mode, name):
if self._playback_mode:
if not self._label_list:
# Get flags, Set working dir
_index_based_playback = False
if self._play_list:
if self._play_step_index < len(self._play_list):
_step = self._play_list[self._play_step_index]
Expand All @@ -559,6 +561,7 @@ def _open(self, mode, name):
else:
_set_flags = 0
_clear_flags = 0
_index_based_playback = True

if _set_flags or _clear_flags:
logger.debug(f"Applying flags for playback stream '{name}': set=0x{_set_flags:08X}, clear=0x{_clear_flags:08X}.")
Expand All @@ -573,6 +576,8 @@ def _open(self, mode, name):
logger.error(f"Open Failed. No files found for playback stream '{name}'.")
return _resp_err
self._label_list = _play_label_list
if _index_based_playback and self._play_step_index == 0:
logger.info("No play steps, index based playback started.")

else:
if mode == 0:
Expand Down Expand Up @@ -867,10 +872,8 @@ def get_async_response(self):
def get_shutdown_flags(self):
_resp = bytearray()
_cmd = CMD_FLAGS
_set_mask = self._flags.consume_set()
self._flags.consume_clear()
if self._send_ci_terminate_on_shutdown:
_set_mask &= SDS_FLAG_MASK_CI_TERMINATE
_set_mask = SDS_FLAG_MASK_CI_TERMINATE
else:
_set_mask = 0
_clear_mask = SDS_FLAG_MASK_ALIVE
Expand Down
15 changes: 9 additions & 6 deletions template/Board/Corstone-320/vsi/python/sdsio.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
# ---------------------------------------------------------------------------- #
# SDSIO server-compatible stream implementation #
# ---------------------------------------------------------------------------- #
SDSIO_VSI_VERSION = "3.0.1-dev2"
SDSIO_VSI_VERSION = "3.0.1-dev5"

class StreamInfo(NamedTuple):
name: str = None
Expand Down Expand Up @@ -269,7 +269,7 @@ def __init__(
if monitor_factory:
self._monitor = monitor_factory(self._mon_port, self._flags)
self._ctrl_input = None
if control_input_factory is not False:
if control_input_factory is not False and sys.stdin.isatty():
if control_input_factory is None:
control_input_factory = sdsControlInput
if control_input_factory:
Expand Down Expand Up @@ -501,7 +501,8 @@ def _request_auto_playback_if_needed(self, target_flags: Optional[int] = None):
self._flags.request_auto_playback_start()
elif self._flags.auto_playback and self._last_playback_stream_name:
if self._flags.request_auto_playback_terminate():
logger.info("Playback complete - no more steps remaining.")
_complete_msg = "Playback complete - no more steps remaining." if self._play_list else "Playback complete."
logger.info(_complete_msg)
if self._exit_after_playback:
logger.info("SDSIO-Server terminating (playback complete).")
self._send_ci_terminate_on_shutdown = True
Expand Down Expand Up @@ -540,6 +541,7 @@ def _open(self, mode, name):
if self._playback_mode:
if not self._label_list:
# Get flags, Set working dir
_index_based_playback = False
if self._play_list:
if self._play_step_index < len(self._play_list):
_step = self._play_list[self._play_step_index]
Expand All @@ -559,6 +561,7 @@ def _open(self, mode, name):
else:
_set_flags = 0
_clear_flags = 0
_index_based_playback = True

if _set_flags or _clear_flags:
logger.debug(f"Applying flags for playback stream '{name}': set=0x{_set_flags:08X}, clear=0x{_clear_flags:08X}.")
Expand All @@ -573,6 +576,8 @@ def _open(self, mode, name):
logger.error(f"Open Failed. No files found for playback stream '{name}'.")
return _resp_err
self._label_list = _play_label_list
if _index_based_playback and self._play_step_index == 0:
logger.info("No play steps, index based playback started.")

else:
if mode == 0:
Expand Down Expand Up @@ -867,10 +872,8 @@ def get_async_response(self):
def get_shutdown_flags(self):
_resp = bytearray()
_cmd = CMD_FLAGS
_set_mask = self._flags.consume_set()
self._flags.consume_clear()
if self._send_ci_terminate_on_shutdown:
_set_mask &= SDS_FLAG_MASK_CI_TERMINATE
_set_mask = SDS_FLAG_MASK_CI_TERMINATE
else:
_set_mask = 0
_clear_mask = SDS_FLAG_MASK_ALIVE
Expand Down
9 changes: 7 additions & 2 deletions utilities/sdsio-server.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
import termios
import tty

SDSIO_SERVER_VERSION = "3.0.1-dev4"
SDSIO_SERVER_VERSION = "3.0.1-dev5"

class StreamInfo(NamedTuple):
name: str = None
Expand Down Expand Up @@ -911,7 +911,8 @@ def _request_auto_playback_if_needed(self, target_flags: Optional[int] = None):
self._flags.request_auto_playback_start()
elif self._flags.auto_playback and self._last_playback_stream_name:
if self._flags.request_auto_playback_terminate():
logger.info("Playback complete - no more steps remaining.")
_complete_msg = "Playback complete - no more steps remaining." if self._play_list else "Playback complete."
logger.info(_complete_msg)
if self._exit_after_playback:
logger.info("SDSIO-Server terminating (playback complete).")
self._send_ci_terminate_on_shutdown = True
Expand Down Expand Up @@ -950,6 +951,7 @@ def _open(self, mode, name):
if self._playback_mode:
if not self._label_list:
# Get flags, Set working dir
_index_based_playback = False
if self._play_list:
if self._play_step_index < len(self._play_list):
_step = self._play_list[self._play_step_index]
Expand All @@ -969,6 +971,7 @@ def _open(self, mode, name):
else:
_set_flags = 0
_clear_flags = 0
_index_based_playback = True

if _set_flags or _clear_flags:
logger.debug(f"Applying flags for playback stream '{name}': set=0x{_set_flags:08X}, clear=0x{_clear_flags:08X}.")
Expand All @@ -983,6 +986,8 @@ def _open(self, mode, name):
logger.error(f"Open Failed. No files found for playback stream '{name}'.")
return _resp_err
self._label_list = _play_label_list
if _index_based_playback and self._play_step_index == 0:
logger.info("No play steps, index based playback started.")

else:
if mode == 0:
Expand Down
Loading