forked from qt-creator/qt-creator
baremetal: add openocd pipelining support
Change-Id: Idcfdd42f741319f81cc378687451693facdb955f Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
@@ -30,7 +30,7 @@
|
||||
<item row="3" column="1">
|
||||
<widget class="QLineEdit" name="hostNameLineEdit">
|
||||
<property name="text">
|
||||
<string>localhost</string>
|
||||
<string>|openocd -c "gdb_port pipe" -c "log_output openocd.log;" -f board/stm3241g_eval_stlink.cfg</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -98,6 +98,9 @@ DebuggerStartParameters BareMetalRunControlFactory::startParameters(const BareMe
|
||||
params.projectBuildDirectory = buildConfig->buildDirectory().toString();
|
||||
params.projectSourceFiles = project->files(Project::ExcludeGeneratedFiles);
|
||||
}
|
||||
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();
|
||||
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user