Lines Matching refs:self

24     def __init__(self, cfg, device, core,  argument
34 self.file = cfg.file
35 self.file_type = cfg.file_type
36 self.hex_name = cfg.hex_file
37 self.bin_name = cfg.bin_file
38 self.elf_name = cfg.elf_file
39 self.gdb_cmd = cfg.gdb if cfg.gdb else None
40 self.device = device
41 self.core = core
42 self.linkserver = linkserver
43 self.dt_flash = dt_flash
44 self.erase = erase
45 self.probe = probe
46 self.gdb_host = gdb_host
47 self.gdb_port = gdb_port
48 self.semihost_port = semihost_port
49 self.tui_arg = ['-tui'] if tui else []
50 self.override = override if override else []
51 self.override_cli = self._build_override_cli()
53 self.tool_opt = []
56 self.tool_opt += opts
110 def linkserver_version_str(self): argument
112 if not hasattr(self, '_linkserver_version'):
113 linkserver_version_cmd=[self.linkserver, "-v"]
114 ls_output=self.check_output(linkserver_version_cmd)
115 self.linkserver_version = str(ls_output.split()[1].decode()).lower()
117 return self.linkserver_version
119 def do_run(self, command, **kwargs): argument
121 self.linkserver = self.require(self.linkserver)
122 self.logger.info(f'LinkServer: {self.linkserver}, version {self.linkserver_version_str}')
125 self.flash(**kwargs)
127 if self.core is not None:
128 _cmd_core = [ "-c", self.core ]
132 linkserver_cmd = ([self.linkserver] +
134 ["--probe", str(self.probe) ] +
135 ["--gdb-port", str(self.gdb_port )] +
136 ["--semihost-port", str(self.semihost_port) ] +
138 self.override_cli +
139 [self.device])
141 self.logger.debug(f'LinkServer cmd: + {linkserver_cmd}')
144 if self.elf_name is None or not os.path.isfile(self.elf_name):
147 gdb_cmd = ([self.gdb_cmd] +
148 self.tui_arg +
149 [self.elf_name] +
158 self.run_server_and_client(linkserver_cmd, gdb_cmd)
161 if self.gdb_host:
164 self.check_call(linkserver_cmd)
166 def do_erase(self, **kwargs): argument
168 linkserver_cmd = ([self.linkserver, "flash"] + ["--probe", str(self.probe)] +
169 [self.device] + ["erase"])
170 self.logger.debug("flash erase command = " + str(linkserver_cmd))
171 self.check_call(linkserver_cmd)
173 def _build_override_cli(self): argument
177 if self.override is not None:
178 for ov in self.override:
183 def flash(self, **kwargs): argument
185 [self.linkserver, "flash"]
186 + ["--probe", str(self.probe)]
187 + self.override_cli
188 + [self.device]
190 self.logger.debug(f'LinkServer cmd: + {linkserver_cmd}')
192 if self.erase:
193 self.do_erase()
197 if self.supports_hex() and self.hex_name is not None and os.path.isfile(self.hex_name):
198 flash_cmd = (["load", self.hex_name])
200 elif self.bin_name is not None and os.path.isfile(self.bin_name):
201 if self.dt_flash:
202 load_addr = self.flash_address_from_build_conf(self.build_conf)
204 self.logger.critical("no load flash address could be found...")
207 flash_cmd = (["load", "--addr", str(load_addr), self.bin_name])
208 elif self.elf_name is not None and os.path.isfile(self.elf_name):
209 flash_cmd = (["load", self.elf_name])
212 raise ValueError(err.format(self.hex_name, self.bin_name, self.elf_name))
216 self.logger.debug("flash command = " + str(linkserver_cmd))
218 if not self.logger.isEnabledFor(logging.DEBUG):
219 if self.linkserver_version_str < "v1.3.15":
224 self.check_call(linkserver_cmd, **kwargs)
226 def supports_hex(self): argument
228 return self.linkserver_version_str >= "v1.5.30"