summaryrefslogtreecommitdiff
path: root/src/jtag
Commit message (Collapse)AuthorAgeFilesLines
* command_context_t -> struct command_contextZachary T Welch2009-11-1318-44/+44
| | | | Remove misleading typedef and redundant suffix from struct command_context.
* remove rlink structure typedefsZachary T Welch2009-11-133-19/+17
| | | | Remove useless typedefs from the rlink driver. Improve whitespace.
* target_t -> struct targetZachary T Welch2009-11-132-6/+6
| | | | Remove misleading typedef and redundant suffix from struct target.
* jtag_command_t -> struct jtag_commandZachary T Welch2009-11-1312-51/+50
| | | | Remove useless typedef from struct jtag_command.
* jtag_command_container_t -> union jtag_command_containerZachary T Welch2009-11-131-5/+4
| | | | Remove misleading typedef from union jtag_container.
* sleep_command_t -> struct sleep_commandZachary T Welch2009-11-132-5/+4
| | | | Remove misleading typedef from struct sleep_command.
* end_state_command_t -> struct end_state_commandZachary T Welch2009-11-131-4/+3
| | | | Remove misleading typedef from struct end_state_command.
* reset_command_t -> struct reset_commandZachary T Welch2009-11-132-5/+4
| | | | Remove misleading typedef from struct reset_command.
* stableclocks_command_t -> struct stableclocks_commandZachary T Welch2009-11-132-5/+4
| | | | Remove misleading typedef from struct stableclocks_command.
* runtest_command_t -> struct runtest_commandZachary T Welch2009-11-132-5/+4
| | | | Remove misleading typedef from struct runtest_command.
* pathmove_command_t -> struct pathmove_commandZachary T Welch2009-11-137-11/+10
| | | | Remove misleading typedef from struct pathmove_command.
* statemove_command_t -> struct statemove_commandZachary T Welch2009-11-132-5/+4
| | | | Remove misleading typedef from struct statemove_command.
* cmd_queue_page_t -> struct cmd_queue_pageZachary T Welch2009-11-131-9/+8
| | | | Remove misleading typedef from struct cmd_queue_page.
* scan_command_t -> struct scan_commandZachary T Welch2009-11-138-43/+42
| | | | Remove misleading typedef on struct scan_command.
* more vsllink typedef cleanupZachary T Welch2009-11-131-6/+5
| | | | Remove useless typedef for struct insert_insignification_operation.
* vsllink_jtag_t -> struct vsllinkZachary T Welch2009-11-131-39/+38
| | | | Remove misleading typedef and redundant suffix.
* presto_t -> struct prestoZachary T Welch2009-11-131-6/+4
| | | | Remove useless typedef.
* ft2232_device_t -> struct ft2232_deviceZachary T Welch2009-11-131-6/+5
| | | | Remove misleading typedef from ft2232_device; it was barely used.
* jlink_jtag_t -> struct jlinkZachary T Welch2009-11-131-41/+40
| | | | Remove misleading typedef and redundant suffix.
* cable_t -> struct cableZachary T Welch2009-11-131-6/+5
| | | | Remove useless typedef and redundant suffix from parport struct cable.
* pending_scan_result_t -> struct pending_scan_resultZachary T Welch2009-11-133-20/+17
| | | | | Remove misleading typedef from struct struct pending_scan_result. Future patches need to remove these duplicated types and code.
* armjtagew_jtag_t -> struct armjtagewZachary T Welch2009-11-131-33/+32
| | | | Remove useless typedef and redundant suffix from struct armjtatew_jtag.
* use struct jtag_tap_event_actionZachary T Welch2009-11-132-7/+5
| | | | Remove useless typedef and redundant suffix from jtag_tap_event_action.
* jtag_event_callback_t -> struct jtag_event_callbackZachary T Welch2009-11-131-13/+19
| | | | | Remove useless typedef and redundant suffix from jtag_event_callback. Add documentation for the structure.
* jtag_interface_t -> struct jtag_interfaceZachary T Welch2009-11-1320-39/+38
| | | | Remove useless typedef and redundant suffix from struct jtag_interface.
* bitbang_interface_t -> struct bitbang_interfaceZachary T Welch2009-11-136-10/+9
| | | | Removes another useless typedef and suffix.
* bitq_interface_t -> struct biq_interfaceZachary T Welch2009-11-133-8/+6
| | | | Remove useless typedef and redundant suffix.
* encapsulate bitq_state structureZachary T Welch2009-11-132-10/+8
| | | | | | | Move the bitq_state structure from the header to source file, as it is used internally. Also removes its silly typedef.
* scan_field_t -> struct scan_fieldZachary T Welch2009-11-139-67/+66
| | | | Remove useless structure typedef.
* jtag_tap_t -> struct jtag_tapZachary T Welch2009-11-139-65/+60
| | | | | Search and destroy the jtag_tap_t typedef. This also cleans up a layering violation, removing the declaration from types.h.
* command_handler_t: make argc unsignedZachary T Welch2009-11-131-3/+2
| | | | | | The number of command arguments will always be 0 or more, so use the right type in handlers. This has a cascading effect up through the layers, but the new COMMAND_HANDLER macros prevented total chaos.
* add CMD_NAME macro for command handlersZachary T Welch2009-11-131-1/+1
| | | | | By introducing the CMD_NAME macro, this parameter may be integrated as args[-1] in command.[ch], without touching any other call sites.
* use CALL_COMMAND_HANDLER instead of direct callsZachary T Welch2009-11-131-1/+1
| | | | | | By using CALL_COMMAND_HANDLER, parameters can be reordered, added, or even removed in inherited signatures, without requiring revisiting all of the various call sites.
* use COMMAND_HELPER for command helper functionsZachary T Welch2009-11-131-3/+1
| | | | | Define the numerous helpers that inherit command handler parameters using the COMMAND_HELPER macro.
* use COMMAND_HANDLER macro to define all commandsZachary T Welch2009-11-137-43/+34
|
* parport: add support for the jtag_khz command.Jonas Horberg2009-11-121-8/+64
| | | | | | | | | | | Add the khz and speed_div functions to the parport interface driver. Add the parport_toggling_time function that tells the parport driver how long (in nanoseconds) it takes for the hardware to toggle TCK. [dbrownell@users.sourceforge.net: tweak doc for clarity, mention multimeter, and whitespace fixes] Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* fix 'jtag interface' behaviorZachary T Welch2009-11-111-1/+2
| | | | | Without this patch, running "openocd -c 'jtag interface'" segfaults. Now, it returns the string "undefined" when the interface is unset.
* jtag: remove useless declarationsZachary T Welch2009-11-096-295/+248
| | | | | | Contrary to my previous assessment, some opportunities to remove forward declarations were overlooked. Remove them by moving the definitions of the command registration and interface structure to the end of files.
* finish removing deprecated/obsolete commandsDavid Brownell2009-11-093-107/+4
| | | | | | | | | | | | | | | | | | | | It's been about a year since these were deprecated and, in most cases, removed. There's no point in carrying that documentation, or backwards compatibility for "jtag_device" and "jtag_speed", around forever. (Or a few remnants of obsolete code...) Removed a few obsolete uses of "jtag_speed": - The Calao stuff hasn't worked since July 2008. (Those Atmel targets need to work with a 32KHz core clock after reset until board-specific init-reset code sets up the PLL and enables a faster JTAg clock.) - Parport speed controls don't actually work (tops out at about 1 MHz on typical HW). - In general, speed controls need to live in board.cfg files (or sometimes target.cfg files), not interface.cfg ... Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* src/jtag: remove 'extern' and wrap headers.Zachary T Welch2009-11-094-63/+72
| | | | | | | Removes the 'extern' keyword from function declarations. Wraps long prototypes to fit into 80 columns. Fixes documentation for jtag_tap_s::{,has}idcode fields.
* Fix vsllink bulk out endpoint parsing.Zachary T Welch2009-11-071-1/+1
|
* Improve jtag command argument parsing.Zachary T Welch2009-11-056-51/+36
|
* ft2232: cleanupDavid Brownell2009-11-041-110/+97
| | | | | | | | | Previous patch somehow made GCC lose some of its cookies; work around, zero-init that struct. Clean up code from the previous patch. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* JTAG: support KT-LINK adapterKrzysztof Kajstura2009-11-041-0/+131
| | | | Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* FT2232: increase read retry countsDimitar Dimitrov2009-11-011-8/+26
| | | | | | | | This change is necessary to debug AT91SAM9260 on my PC with a FT2232H dongle. Signed-off-by: Dimitar Dimitrov <dinuxbg@gmail.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* Signalyzer: H2 and H4 supportOleg Seiljus2009-10-271-0/+809
| | | | | | | | | | This patch includes partial support for these new JTAG adapters. More complete support will require updates to the libftdi code, for EEPROM access. [dbrownell@users.sourceforge.net: fix whitespace, linelen, etc ] Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* ft2232: less noise with _DEBUG_JTAG_IO_David Brownell2009-10-261-1/+0
| | | | Don't log "Yes, I'm *still* in TAP_IDLE" every seven runtest clocks.
* JTAG: "jtag newtap ..." cleanupDavid Brownell2009-10-261-7/+2
| | | | | | Get rid of needless variable, improve and shrink diagnostic. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* JTAG: simple autoprobingDavid Brownell2009-10-261-12/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds basic autoprobing support for the JTAG scan chains which cooperate. To use, you can invoke OpenOCD with just: - interface spec: "-f interface/...cfg" - possibly with "-c 'reset_config ...'" for SRST/TRST - possibly with "-c 'jtag_khz ...'" for the JTAG clock Then set up config files matching the reported TAPs. It doesn't declare targets ... just TAPs. So facilities above the JTAG and SVF/XSVF levels won't be available without a real config; this is almost purely a way to generate diagnostics. Autoprobe was successful with most boards I tested, except ones incorporating C55x DSPs (which don't cooperate with this scheme for IR length autodetection). Here's what one multi-TAP chip reported, with the "Warn:" prefixes removed: clock speed 500 kHz There are no enabled taps. AUTO PROBING MIGHT NOT WORK!! AUTO auto0.tap - use "jtag newtap auto0 tap -expected-id 0x2b900f0f ..." AUTO auto1.tap - use "jtag newtap auto1 tap -expected-id 0x07926001 ..." AUTO auto2.tap - use "jtag newtap auto2 tap -expected-id 0x0b73b02f ..." AUTO auto0.tap - use "... -irlen 4" AUTO auto1.tap - use "... -irlen 4" AUTO auto2.tap - use "... -irlen 6" no gdb ports allocated as no target has been specified The patch tweaks IR setup a bit, so we can represent TAPs with undeclared IR length. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* JTAG: jtag_tap_init() bugfixesDavid Brownell2009-10-251-9/+18
| | | | | | | Stop allocating three bytes per IR bit, and cope somewhat better with IR lengths over 32 bits. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>