Commit Graph

4 Commits

Author SHA1 Message Date
Tobias Hunger
397e7f4843 Update License according to agreement with Free Qt Foundation
* Update files in src/plugins

Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:57:01 +00:00
Denis Shienkov
6e2738af0e BareMetal: Do not use QPointer if it is not required
Change-Id: Ib7162ae6b40d06bfb54705fd4b53bde2ce78083c
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Reviewed-by: Tim Sander <tim@krieglstein.org>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-12-07 08:49:41 +00:00
Christian Stenger
b71462d495 BareMetal: Fix compile for older compiler
Introduced with 165f008dce

Change-Id: Idc5b00313de807857bcd4deaaf99cabf95e81c6a
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-01-06 16:26:20 +01:00
Denis Shienkov
165f008dce BareMetal: Allow to manage configurations of HW GDB servers
The user has only one possibility to setup of the remote GDB server
when a new device is created (or to modify it for existing device).
It is possible only in the host/port fields for connection to the
GDB server. It is a little inconvenient for the user. If the user
wants to use other configuration of the GDB server, then need every
time to edit the current configuration.

Improving this it is introduction a new concept with a new entity
named as "GDB server provider". Now to the device debugging purpose
the user can choose any of the GDB provider from the list (by analogy
with toolchain and so on). Each configuration of GDB provider is
created by the user manually on the new "GDB Server Provider" options
page. This can be made before or after creation of device.

A GDB server provider can work in three startup modes (depends on
implementation of concrete provider):

1) NoStartup mode.

This means that we do not want to startup a provider, we just trying
to connect to the already started GDB provider server. This mode uses
the TCP/IP connection with manually specifying of remote host and port.

2) StartupOnNetwork mode.

This means that we want to launch of the GDB provider automatically
before connect to it in process of remote debugging. This mode also
uses the TCP/IP protocol. In addition to it, a GDB provider can has
additional options which are contains a paths to provider executable
file, to configuration files and so on (it is depends on concrete
provider implementation). This mode (with NoStartup) covers about 90%
of usecase, and is supported by most set of the GDB server providers.

3) StartupOnPipe mode.

This is similar to StartupOnNetwork mode and we also automatically
starts the GDB server provider before debugging. But in this case is
used the Pipe mode instead of TCP/IP. Not each of the GDB provider
can support debugging via pipes.

This patch has concrete implementations for a following set of the
GDB server providers:

* "Default" provider which supports only the NoStartup mode.

* "Open On-Chip Debugger" (http://openocd.sourceforge.net/)
  provider which supports all modes.

* "STLinkUtil" (https://github.com/texane/stlink)
  provider which supports NoStartup and StartupOnNetwork modes.

Tested on Windows and Linux with:

* target HW: ARM Stm32F4Discovery board with HW debugger STLink-v2
* provider: OpenOCD v0.8.0 (tested on Windows and Linux)
* provider: STLink-Util (tested on Linux only)
* toolchain: ARM GCC v4.9.2
* debugger: GDB v7.8.1 (with Python support)
* QtCreator with QBS project

Task-number: QTCREATORBUG-13686
Change-Id: I59c775d91b0a4227d931188879850c536290e1ba
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-01-06 15:04:47 +01:00