Skip to content

Commit 590227d

Browse files
danieldegrassecfriedt
authored andcommitted
scripts: rtt_helper: make helper easier to use as python module
Update rtt_helper script to make it easier to use as a python module, when argparse wouldn't be useful Signed-off-by: Daniel DeGrasse <[email protected]>
1 parent 1225aa3 commit 590227d

File tree

3 files changed

+36
-25
lines changed

3 files changed

+36
-25
lines changed

scripts/bmc_rtt.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ def start_bmc_rtt():
2323
Main function to start RTT console
2424
"""
2525
rtt_helper = RTTHelper(
26-
default_cfg=DEFAULT_CFG,
27-
default_search_base=DEFAULT_SEARCH_BASE,
28-
default_search_range=DEFAULT_SEARCH_RANGE,
26+
cfg=DEFAULT_CFG,
27+
search_base=DEFAULT_SEARCH_BASE,
28+
search_range=DEFAULT_SEARCH_RANGE,
2929
)
3030
rtt_helper.parse_args()
3131
rtt_helper.run_rtt_server()

scripts/rtt_helper.py

Lines changed: 30 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -116,22 +116,30 @@ class RTTHelper:
116116
Helper to start rtt. Takes arguments from user
117117
"""
118118

119-
def __init__(self, default_cfg, default_search_base, default_search_range):
119+
def __init__(
120+
self,
121+
cfg,
122+
search_base,
123+
search_range,
124+
openocd=DEFAULT_SYSROOT / "usr" / "bin" / "openocd",
125+
rtt_port=DEFAULT_RTT_PORT,
126+
search_dir=DEFAULT_SYSROOT / "usr" / "share" / "openocd" / "scripts",
127+
):
120128
"""
121129
Inits the RTT helper with default values
122-
@param default_cfg: default config to use for openocd
123-
@param default_search_base: default search base for RTT
124-
@param default_search_range: default search range for RTT
130+
@param cfg: default config to use for openocd
131+
@param search_base: default search base for RTT
132+
@param search_range: default search range for RTT
133+
@param openocd: default value for openocd executable
134+
@param rtt_port: default port to use for rtt
135+
@param search_dir: default directory for search
125136
"""
126-
self._default_cfg = default_cfg
127-
self._default_search_base = default_search_base
128-
self._default_search_range = default_search_range
129-
self._openocd = None
130-
self._search_dir = None
131-
self._cfg = None
132-
self._rtt_port = None
133-
self._search_base = None
134-
self._search_range = None
137+
self._cfg = cfg
138+
self._search_base = search_base
139+
self._search_range = search_range
140+
self._openocd = openocd
141+
self._rtt_port = rtt_port
142+
self._search_dir = search_dir
135143

136144
def parse_args(self):
137145
"""
@@ -144,42 +152,42 @@ def parse_args(self):
144152
"-c",
145153
"--config",
146154
type=Path,
147-
default=self._default_cfg,
155+
default=self._cfg,
148156
help="OpenOCD config file to use",
149157
)
150158
parser.add_argument(
151159
"-a",
152160
"--search_base",
153161
type=int,
154-
default=self._default_search_base,
162+
default=self._search_base,
155163
help="Base address to search for RTT block",
156164
)
157165
parser.add_argument(
158166
"-r",
159167
"--search_range",
160168
type=int,
161-
default=self._default_search_range,
169+
default=self._search_range,
162170
help="Range to search for RTT block",
163171
)
164172
parser.add_argument(
165173
"-p",
166174
"--rtt_port",
167175
type=int,
168-
default=DEFAULT_RTT_PORT,
176+
default=self._rtt_port,
169177
help="Port to use for RTT server",
170178
)
171179
parser.add_argument(
172180
"-o",
173181
"--openocd",
174-
default=DEFAULT_SYSROOT / "usr" / "bin" / "openocd",
182+
default=self._openocd,
175183
help="Path to OpenOCD executable",
176184
metavar="FILE",
177185
type=Path,
178186
)
179187
parser.add_argument(
180188
"-s",
181189
"--search_dir",
182-
default=DEFAULT_SYSROOT / "usr" / "share" / "openocd" / "scripts",
190+
default=self._search_dir,
183191
help="Path to OpenOCD search directory",
184192
)
185193
parser.add_argument(
@@ -296,5 +304,8 @@ def dump_rtt_data(self):
296304
except socket.timeout:
297305
# No data was sent within 0.5 seconds, close connection
298306
break
307+
except UnicodeDecodeError:
308+
print("Invalid byte")
309+
break
299310
sock.close()
300311
openocd.stop_openocd_server()

scripts/smc_rtt.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ def start_smc_rtt():
2323
Main function to start RTT console
2424
"""
2525
rtt_helper = RTTHelper(
26-
default_cfg=DEFAULT_CFG,
27-
default_search_base=DEFAULT_SEARCH_BASE,
28-
default_search_range=DEFAULT_SEARCH_RANGE,
26+
cfg=DEFAULT_CFG,
27+
search_base=DEFAULT_SEARCH_BASE,
28+
search_range=DEFAULT_SEARCH_RANGE,
2929
)
3030
rtt_helper.parse_args()
3131
rtt_helper.run_rtt_server()

0 commit comments

Comments
 (0)