summaryrefslogtreecommitdiff
path: root/doc/openocd.texi
Commit message (Collapse)AuthorAgeFilesLines
* openocd.texi: minor fixes in Reset ConfigurationAaron Carroll2011-01-311-2/+2
| | | | Signed-off-by: Aaron Carroll <aaronc@cse.unsw.edu.au>
* initial SWD transport (SWD infrastructure #2)David Brownell2010-12-241-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This piggy backs on JTAG so it's not yet pretty, but that seems unavoidable so far given today's OpenOCD internals. SWD init and data transfer are unfinished and untested, but that should cause no regressions, and will be addressed by the time drivers start using this infrastructure. Checking in whould get the code working better sooner, and turn up any structural/architectural issues while they're easier to fix. The debug adapter drivers will provide simple SWD driver structs with methods that kick in as needed (instead of JTAG). So far just one adapter driver has been updated (not yet ready to use or circulate). The biggest issues are probably - fault handling, where the ARM Debug Interface V5 pipelining needs work in both JTAG and SWD modes and - missing rewrite of block I/O code to work on both of our Cortex-ready transports (Current code is hard-wired to JTAG); relates also to the pipelining issue. - omitted support to activate/deactivate SWO/SWV trace (this is technically trivial, but configuring what to trace is NOT. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> ---- doc/openocd.texi | 17 ++ src/jtag/core.c | 3 src/jtag/interface.h | 4 src/jtag/jtag.h | 2 src/jtag/swd.h | 114 +++++++++++++++++++ src/jtag/tcl.c | 2 src/target/adi_v5_swd.c | 281 ++++++++++++++++++++++++++++++++++++++++++++++-- src/target/arm_adi_v5.c | 8 + src/target/arm_adi_v5.h | 3 9 files changed, 425 insertions(+), 9 deletions(-)
* openocd doc: update the comments about Jim Tcl a bitØyvind Harboe2010-12-161-19/+27
| | | | Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* FLASH/NOR: rename from spearsmi to stmsmiAntonio Borneo2010-11-231-6/+7
| | | | | | | STMicroelectronics controller SMI is not SPEAr specific. Rename it and change name to every symbol in the code. Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
* Documentation: fix typoAntonio Borneo2010-11-231-1/+1
| | | | Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
* NOR/SPEAr: Add support for Serial NORAntonio Borneo2010-11-161-0/+27
| | | | | | | | Add support and documentation for STMicroelectronics SPEAr Serial Memory Interface (SMI). Code tested on SPEAr3xx only. Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
* JIM: document "echo" commandAntonio Borneo2010-11-091-1/+2
| | | | | | | | | Document "-n" option in manual; Modify "echo" command definition as COMMAND_HANDLER to easily add help message Add help message aligned with manual. Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
* pipes: add documentation for pipesØyvind Harboe2010-10-011-5/+22
| | | | | | | | | Stick with the name "gdb_port" even if this command can be used for other things(disable, named pipes, anonymous stdin/out pipe). "port" is correct for probably more than 90% of use cases, if not more. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* server: add support for pipesØyvind Harboe2010-10-011-3/+3
| | | | | | | -p/--pipe is now deprecated. Use '-c "gdb_port pipe;log_output openocd.log"' instead. Warning logged. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* xscale: some wp detail added to user manualMike Dunn2010-09-201-0/+9
| | | | | | | | | | | | | | | | Hi everyone (again), Watchpoints on xscale are quirky, so I thought a little explanation in the user's manual was warranted. Comments gratefully received. Last one, Øyvind :-) Thanks, Mike Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
* cortex m3: add cortex_m3 reset_config cmdSpencer Oliver2010-08-311-0/+15
| | | | | | | | | | | | This new cmd adds the ability to choose the Cortex-M3 reset method used. It defaults to using SRST for reset if available otherwise it falls back to using NVIC VECTRESET. This is known to work on all cores. Move any luminary specific reset handling to the stellaris cfg file. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* Fix typo in documentation of usb_blaster_vid_pid commandCatalin Patulea2010-08-131-2/+2
|
* tcl: remove silly ocd_ prefix to array2mem and mem2arrayØyvind Harboe2010-08-111-2/+2
| | | | | | | | ocd_ prefix is used internally in OpenOCD as a kludge more or less to deal with the two kinds of commands that OpenOCD has. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* xscale documentation: vector table handlingMike Dunn2010-08-021-4/+22
| | | | | | | | | | | | | | | | | | | | | | | Hi everyone. I noticed some incorrect information in the user manual regarding how the vector table is handled on the xscale, so for your consideration, here's a short patch that corrects it, and adds a little more detail I thought might be helpful. The documentation states that OpenOCD does not attempt to synchronize the vector tables in memory with those stored in the "mini instruction cache". In fact, on each resume it does copy from memory to the cache all entries in the high and low tables that were not previously defined using the 'xscale vector_table' command. (In src/target/xscale.c, see xscale_update_vectors(), which is invoked by xscale_resume().) I take advantage of this during Linux boot-up. The extra detail describes in general terms how I do this. Corrections, comments are of course gratefully received. Thanks, Mike Signed-off-by: Mike Dunn <mikedunn@newsguy.com>
* "transport select" returns Jim valueDavid Brownell2010-07-241-1/+1
| | | | | | | Make it scriptable, so code can be conditionalized based on what transport is in use for the session. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* docs: removed unused cmd 'fast'Spencer Oliver2010-07-201-19/+0
| | | | | | The cmd fast was removed in commit c0d14dc7f19d785702eee5f69de5b1a63902554b Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* docs: missing parameter from nand check_bad_blocksSpencer Oliver2010-07-191-1/+1
| | | | Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* docs: fix transport typoSpencer Oliver2010-07-121-2/+2
| | | | Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* Fix minor openocd.texi bugDavid Brownell2010-07-021-0/+1
| | | | | ::X Signed-off-by: David Brownell <db@helium.(none)>
* initial "transport" frameworkDavid Brownell2010-07-021-1/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the guts of a transport framework with initialization, which should work with current JTAG-only configurations (tested with FT2232). Each debug adapter can declare the transports it supports, and exactly one transport is initialized. (with its commands) in any given OpenOCD session. * Define a new "struct transport with init hooks and a few "transport" subcommands to support it: "list" ... list the transports configured (just "jtag" for now) "select" ... makes the debug session use that transport "init" ... initializes the selected transport (internal) * "interface_transports" ... declares transports the current interface can support. (Some will do this from C code instead, when there are no hardware versioning (or other) issues to prevent it. Plus some FT2232 tweaks, including a few to streamline upcoming support for an SWD transport (initially for Luminary adapters). Eventually src/jtag should probably become src/transport, moving jtag-specific stuff to transport/jtag. Signed-off-by: David Brownell <db@helium.(none)>
* flash: add virtual flash bank driverSpencer Oliver2010-05-261-0/+20
| | | | | | | | | | | | | This adds a virtual flash bank driver that allows virtual banks to be defined that refer to an existing flash bank. For example the real address for bank0 on the pic32 is 0x1fc00000 but the user program will either be in kseg0 (0xbfc00000) or kseg1 (0x9fc00000). This also means that gdb will be aware of all the read only flash addresses. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* Documentation: consistency in GDB command nameMarc Pignat2010-05-111-1/+1
| | | | Always use the complete name of the GDB command, not an abbreviation.
* Documentation : arm920t implements armv4Marc Pignat2010-05-111-1/+1
| | | | There is a small typo in the cpu list, arm920t is armv4.
* flash: stop caching protection stateØyvind Harboe2010-05-051-11/+2
| | | | | | | | | | | | | | There are a million reasons why cached protection state might be stale: power cycling of target, reset, code executing on the target, etc. The "flash protect_check" command is now gone. This is *always* executed when running a "flash info". As a bonus for more a more robust approach, lots of code could be deleted. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* flash: erase_address now has an unlock optionØyvind Harboe2010-05-051-2/+4
| | | | | | | Quite useful to be able to unlock the flash, just like in the flash write_image cmd. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* documentation typoMarc Pignat2010-05-051-1/+1
| | | | Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* docs: now builds againØyvind Harboe2010-05-051-1/+1
| | | | | | Fix gaffe committed last time. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* docs: improve load_image docsmichal smulski2010-04-201-3/+13
| | | | | | add docs for missing args. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* doc: gdb-attach can fix gdb connect issuesØyvind Harboe2010-04-201-2/+7
| | | | | | | Flash probing must succeed for e.g. gdb load and automatic hardware/software breakpoints to work. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* jtag/tcl.c cleanup -- split out "adapter.c"David Brownell2010-03-271-3/+3
| | | | | | | | | | | | Clean up the jtag/tcl.c file, which was one of the biggest and messiest ones in that directory. Do it by splitting out all the generic adapter commands to a separate "adapter.c" file (leaving the "tcl.c" file holding only JTAG utilities). Also rename the little-used "jtag interface" to "adapter_name", which should have been at least re-categorized earlier (it's not jtag-only). Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* DOCS: update flash bank examplesSpencer Oliver2010-03-181-21/+21
| | | | | | - include the $_FLASHNAME in all flash bank examples. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* PIC32MX: add unlock cmdSpencer Oliver2010-03-181-2/+6
| | | | | | | 'unlock' performs a full unlock/erase of the device, removing any code protection. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* SCRIPT: add add_script_search_dir cmdSpencer Oliver2010-03-171-0/+5
| | | | | | | Add a add_script_search_dir cmd so that adding search dir's can be added to cfg scripts. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* MIPS: remove ejtag_srst variantSpencer Oliver2010-03-171-8/+0
| | | | | | | | | | | The mips_m4k_assert_reset has now been restructured so the variant ejtag_srst is not required anymore. The ejtag software reset will be used if the target does not have srst connected. Remove ejtag_srst from docs. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* rename jtag_nsrst_assert_width as adapter_nsrst_assert_widthDavid Brownell2010-03-151-1/+1
| | | | | | | | | | | Globally rename "jtag_nsrst_assert_width" as "adapter_nsrst_assert_width", and move it out of the "jtag" command group ... it needs to be used with non-JTAG transports Includes a migration aid (in jtag/startup.tcl) so that old user scripts won't break. That aid should Sunset in about a year. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* rename jtag_nsrst_delay as adapter_nsrst_delayDavid Brownell2010-03-151-2/+2
| | | | | | | | | | | Globally rename "jtag_nsrst_delay" as "adapter_nsrst_delay", and move it out of the "jtag" command group ... it needs to be used with non-JTAG transports Includes a migration aid (in jtag/startup.tcl) so that old user scripts won't break. That aid should Sunset in about a year. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* rename jtag_khz as adapter_khzDavid Brownell2010-03-151-9/+9
| | | | | | | | | | | Globally rename "jtag_khz" as "adapter_khz", and move it out of the "jtag" command group ... it needs to be used with non-JTAG transports Includes a migration aid (in jtag/startup.tcl) so that old user scripts won't break. That aid should Sunset in about a year. (We may want to update it to include a nag message too.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* Add support for Bus Pirate as a JTAG adapter.Michal Demin2010-03-111-0/+3
| | | | | | | | This includes a driver and matching config file. This support needs to be enabled through the initial "configure" (use "--enable-buspirate"). Signed-off-by: Michal Demin <michaldemin@gmail.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* split "interface" commands from "jtag" onesDavid Brownell2010-03-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | We'll need to be able to work with debug adapter interfaces (drivers) even when they're not used for JTAG ... for example, while there are multi-transport drivers which support JTAG *and* several other transports (or just one more, like SWD) there are also adapters with more limited goals (and no JTAG support at all). Start decoupling the two concepts ("debug adapter driver", "jtag") by having two command groups, which initialize separately. This will help us support OpenOCD sessions using only non-JTAG transports, in which JTAG commands should not be registered. Update docs to mention that the JTAG, SVF, and XSVF commands won't work without a JTAG transport. Note that at least commands working with SRST are still inappropriately coupled to JTAG ... inappropriate because (a) SRST is not part of the JTAG standard, for all that many platforms (like ARM) expect it; and also (b) because they're used with non-JTAG debug and programming interfaces, too. They should perhaps become generic "interface" operations at some point. (Similarly with the clock rate to be used by a given adapter.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* doc: not all debug adapters are "dongles"David Brownell2010-03-051-36/+98
| | | | | | | | | | | | | | | | | Talk more about "debug adapters" instead of only "dongles". Not all adapters are discrete widgets; some are integrated onto boards. If we only talk about "dongles" we rule out many valid setups, and help confuse some users (who may be using Dongle-free environments). Also start bringing out the point that JTAG isn't the only transport protocol, even though OpenOCD historically presumes "all is JTAG". (Not all debug adapters are JTAG adapters, or JTAG-only adapters.) Plus a few minor fixes (spelling etc) in the vicinity of those changes, and updates about FT2232H clocking issues (they can go faster than the older chips, and can support adaptive clocking). Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* semihosting: move semihosting cmd to arm cmd groupSpencer Oliver2010-02-281-12/+12
| | | | | | | | | Move semihosting cmd to the arm cmd group. Targets that support semihosting will setup the setup_semihosting callback function. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* CortexM3: move disassemble cmd to arm cmd groupSpencer Oliver2010-02-281-6/+0
| | | | | | | Rather than using a Cortex disassemble cmd, we now use the arm generic version. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
* Add board/redbee-usb.cfgMariano Alvira2010-02-281-0/+1
| | | | | | | | | | | The Redbee USB is a small form-factor usb stick from Redwire, LLC (www.redwirellc.com/store), built around a Freescale MC13224V ARM7TDMI + 802.15.4 radio (plus antenna). It includes an FT2232H for debugging, with Channel B connected to the mc13224v's JTAG interface (unusual) and Channel A connected to UART1. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* add board/redbee-econotag.cfg and JTAG supportMariano Alvira2010-02-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | The Redbee Econotag is an open hardware development kit from Redwire, LLC (www.redwirellc.com/store), for the Freescale MC13224V ARM7TDMI + 802.15.4 radio. It includes both an MC13224V and an FT2232H (for JTAG and UART support). It has flexible power supply options. Additional features are: - inverted-F pcb antenna - 36 GPIO brought out to 0.1" pin header (includes all peripheral pins) - Reset button - Two push buttons (on kbi1-5 and kbi0-4) - USB-A connector, powered from USB - up to 16V external input - pads for optional buck inductor - pads for optional 32.768kHz crystal - 2x LEDS on TX_ON and RX_ON [ dbrownell@users.sourceforge.net: shrink lines; texi ] Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* new "stellaris recover" commandDavid Brownell2010-02-271-0/+15
| | | | | | | | | | | | | | | Stellaris chips have a procedure for restoring the chip to what's effectively the "as-manufactured" state, with all the non-volatile memory erased. That includes all flash memory, plus things like the flash protection bits and various control words which can for example disable debugger access. clearly, this can be useful during development. Luminary/TI provides an MS-Windows utility to perform this procedure along with its Stellaris developer kits. Now OpenOCD users will no longer need to use that MS-Windows utility. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* User's Guide mentions OS-specific installationDavid Brownell2010-02-211-0/+12
| | | | | | | | | | Specifically the Linux issue of needing "udev" rules, and MS-Windows needing driver configuration. Also, update the existing udev note to use the correct name of that rules file in the source tree. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* User's Guide: "#" in filesystems names is badDavid Brownell2010-02-101-6/+14
| | | | | | | | Sometimes MS-Windows users try to use filesystem names which include the "#" character. That's generally unwise, since it begins Tcl comments. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* User's Guide: clarify jtag_rclk adviceDavid Brownell2010-02-101-2/+4
| | | | | | | | | | Not all cores and boards support adaptive clocking, so qualify all advice to use it to depend on core and board support. It's primarily ARM cores which support this; and many of the newer ones (like Cortex-M series) don't. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* Documentation: mention bug databaseDavid Brownell2010-02-041-1/+8
| | | | | | | Have the User's Guide and BUG handling notes both reference the fact that we now have a bug database at SourceForge. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* NOR: User's Guide updatesDavid Brownell2010-02-021-6/+5
| | | | | | | | | | | | Remove long-obsolete text about "erase_check" affecting "flash info" output. Move parts of that text to "protect_check", where it's still relevant; and update the "flash info" description to mention the issue. (This is still awkward. It might be best to make "protect_check" mirror "erase_check" by dumping what it finds, so "flash info" doesn't dump any potentially-stale cache info.) Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>