Various type related fixes.
[libswd.git] / README
blob201630eb9fe27ebf4beda0330cbc09445dc170e2
1  Serial Wire Debug Open Library Readme File
3  1. General information.
4  2. How to build and install.
6 ----------------------
7 1. General information
9 Serial Wire Debug Open Library is first open solution for accessing the SW-DP (Serial Wire Debug Port) on ARM Cortex CPU based embedded systems. Library is available under "new" 3 clause BSD License. This project was started by Tomek Cedro to create and document Free and Open-Source SWD (Serial Wire Debug) access to new ARM-Cortex CPU cores. SWD is an alternative to JTAG method for accessing the DAP that allows low-level access to system resources such as system bus, memory, IO, even single stepping the code execution - a must-have for an embedded systems developer. 
11 SWD works on both simple and advanced devices from the ARM Cortex family. By default Cortex CPU or FPGA'a IP Core is both JTAG and SWD capable, so the common name for this transport method is SWJ (Serial Wire and JTAG). It is the application requirement and designer choice if a final product supports JTAG, SWD, or both (SWJ).
13 LibSWD can be considered almost standalone to be easily integrated into third party software with minimal impact on existing program structure. LibSWD implements all utilities necessary to generate bit stream and queue bus operations on both high (operation) and low (bit) abstraction level. High level functions can be called from external application to generate queue that represent bus operations or simply produce a bitstream that can be later flushed into real hardware with simple set of functions (these functions can utilise existing cable drivers already implemented in external software). 
15 The first approach and practical tests were performed on simple STM32Primer development kits using UrJTAG and OpenOCD utilities as described on the http://stm32primer2.sf.net project webstie. Major parts of this research were conducted as a cooperation between Orange Labs Warsaw and Orange Labs Paris, and some additionally by Cybernetic Research Student Group from Warsaw University of Technology in Poland that I am founder and member.
17 For more information please visit project website at http://libswd.sf.net. In case of problems use ticket system on a website or contact author (Tomasz BolesÅ‚aw CEDRO) directly at cederom@tlen.pl or http://www.tomek.cedro.info.
20 ----------------------------
21 2. How to build and install.
23 To obtain the latest release visit project website at http://libswd.sf.net. LibSWD use Autotools so the build and install procedure is pretty straightforward:
25  tar xjvf libswd-<version>.tar.bz2
26  cd libswd-<version>
27  ./configure <optional parameters>
28  make install clean
30 It is possible to build the documentation in html and pdf. Note that you need to have Doxygen installed for this to work. Additionally you need to have LaTeX installed to build the PDF. For complete documentation build type: 
32  make doxygen-doc
34 To create package file for distribution type:
36  make distcheck
38 To uninstall the library type:
40  make uninstall
42 To specify alternative install location:
44  ./configure --prefix=<your path>
46 To know more build options that can be set before compilation:
48  ./configure --help
50 Features enabled/disabled by configure:
51  --enable-debug
52  --disable-application
54 In order to build the Library and the Application you need: gcc, autogen, automake, autoconf, libtool, libftdi, libreadline development packages installed on your system.