Commit ea11a233 authored by Tim Sander's avatar Tim Sander Committed by hjk

baremetal: add openocd pipelining support

Change-Id: Idcfdd42f741319f81cc378687451693facdb955f
Reviewed-by: default avatarhjk <hjk121@nokiamail.com>
parent 3012a9b4
......@@ -30,7 +30,7 @@
<item row="3" column="1">
<widget class="QLineEdit" name="hostNameLineEdit">
<property name="text">
<string>localhost</string>
<string>|openocd -c &quot;gdb_port pipe&quot; -c &quot;log_output openocd.log;&quot; -f board/stm3241g_eval_stlink.cfg</string>
</property>
</widget>
</item>
......
......@@ -98,7 +98,10 @@ DebuggerStartParameters BareMetalRunControlFactory::startParameters(const BareMe
params.projectBuildDirectory = buildConfig->buildDirectory().toString();
params.projectSourceFiles = project->files(Project::ExcludeGeneratedFiles);
}
params.remoteChannel = device->sshParameters().host + QLatin1String(":") + QString::number(device->sshParameters().port);
if (device->sshParameters().host.startsWith(QLatin1Char('|'))) //gdb pipe mode enabled
params.remoteChannel = device->sshParameters().host;
else
params.remoteChannel = device->sshParameters().host + QLatin1String(":") + QString::number(device->sshParameters().port);
params.remoteSetupNeeded = false; // qml stuff, not needed
params.commandsAfterConnect = device->gdbInitCommands().toLatin1();
BuildConfiguration *bc = target->activeBuildConfiguration();
......@@ -109,7 +112,7 @@ DebuggerStartParameters BareMetalRunControlFactory::startParameters(const BareMe
if (ds) {
if (!params.commandsAfterConnect.endsWith("\n"))
params.commandsAfterConnect.append("\n");
params.commandsAfterConnect.append(ds->gdbCommands().toLocal8Bit());
params.commandsAfterConnect.append(ds->gdbCommands().toLatin1());
}
}
}
......
......@@ -251,7 +251,8 @@ void GdbRemoteServerEngine::callTargetRemote()
// Don't touch channels with explicitly set protocols.
if (!channel.startsWith("tcp:") && !channel.startsWith("udp:")
&& !channel.startsWith("file:") && channel.contains(':'))
&& !channel.startsWith("file:") && channel.contains(':')
&& !channel.startsWith('|'))
{
// "Fix" the IPv6 case with host names without '['...']'
if (!channel.startsWith('[') && channel.count(':') >= 2) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment