summaryrefslogtreecommitdiff
path: root/src/openocd.c
Commit message (Collapse)AuthorAgeFilesLines
* command: the Jim interpreter can now be provided rather than createdØyvind Harboe2009-12-011-3/+3
| | | | | | | In embedded hosts, the Jim interpreter can come from the existing context rather than be created by OpenOCD. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* main: invoke jtag_interface_quit() explicitlyØyvind Harboe2009-12-011-6/+2
| | | | | | | | There is no particular reason to invoke jtag_interface_quit() on the atexit() handler, it just makes the code more obtuse and stops other legitimate usage of atexit(). Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
* do not extern 'interp' from command.cZachary T Welch2009-11-301-1/+1
| | | | | Adds 'interp' field to command_context, chasing the few remaining references to the global variable outside of the command module.
* allow deferal of initZachary T Welch2009-11-301-4/+23
| | | | | | | Adds 'noinit' command to prevent OpenOCD from running 'init' at the end up startup, allowing it to be given from telnet or TCL. This provides the old behavior by default, and users can add this command to their scripts to get the new behavior.
* move server_init() to openocd_main()Zachary T Welch2009-11-301-18/+13
| | | | | | | | | Moves the telnet and TCL server startup to server_init(), moving their respective command registration in to server_register_commands(). Adds proper error checking for these particular startup processes. Moves the core server startup to openocd_main(), improving related error checking and preparing to defer 'init'.
* improve gdb_init() sequenceZachary T Welch2009-11-301-1/+1
| | | | | | | | | | | | Rework gdb_init to create flexible APIs (gdb_target_add_{one,all}) and static helper (gdb_target_start) for starting GDB services. Eliminates duplicated code and provides general mechanisms for adding GDB services. The 'init' command is updated to call the new API, and later patches can decouple its policy of adding all targets therein. Provides the new capability to use both piped and TCP servers when multiple targets are defined. The first target fills the pipe, and others will be started on TCP ports (unless disabled, i.e. gdb_port=0).
* bugfix: 'init' changes state, not main()David Brownell2009-11-281-1/+2
| | | | | | | | Code other than main() may invoke "init". When it does so, customized handlers may need to run ... so make sure the command context state is updated before they do so. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* log: improve initializationZachary T Welch2009-11-251-5/+4
| | | | | | Removes redundant assignment of start_ms from log_register_commands(). Eliminates command_context parameter and return value. Adds Doxygen comment block for this API call.
* improve command handling examplesZachary T Welch2009-11-251-4/+0
| | | | | | Removes hello and foo commands from top-level registration. Instead, the dummy interface driver and faux flash driver have been augmented to register these commands as sub-commands.
* httpd: use register_commands()Zachary T Welch2009-11-241-5/+2
| | | | | | | Updates httpd_start() to use register_commands() for 'readform' and 'writeform' commands. Adds server/httpd.h to export the new signatures for this function (and httpd_stop), which allows removing the obsoleted declarations inside openocd.c.
* openocd: use register_commands()Zachary T Welch2009-11-241-6/+18
| | | | Use register_commands() for top-level version and init command.
* use COMMAND_REGISTER macroZachary T Welch2009-11-241-2/+2
| | | | | Replaces direct calls to register_command() with a macro, to allow its parameters to be changed and callers updated in phases.
* refactor command registrationZachary T Welch2009-11-201-1/+1
| | | | | | | | | Refactors the command registration to use helpers to simplify the code. The unregistration routines were made more flexible by allowing them to operate on a single command, such that one can remove all of a commands children in one step (perhaps before adding back a 'config' subcommand that allows getting the others back). Eliminates a bit of duplicated code and adds full API documentation for these routines.
* pass startup_tcl to command_initZachary T Welch2009-11-181-1/+2
| | | | | Removes external linkage from helper module, making the startup code a parameter to a new command context's initialization routine.
* command_handler: change 'cmd_ctx' to CMD_CTXZachary T Welch2009-11-171-9/+9
| | | | Convert all command handler 'cmd_ctx' parameter usage with CMD_CTX.
* command_handler: change to 'argc' to CMD_ARGCZachary T Welch2009-11-171-2/+2
| | | | | This patch converts all instances of 'argc' in COMMAND_HANDLER routines to use CMD_ARGC.
* #include "target.h" less wildlyDavid Brownell2009-11-161-1/+0
| | | | | | | | | Don't include "target.h" from more headers than necessary. This avoids needless interdependencies and duplicated include paths. Don't needlessly include it in source files, either. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* target: less implicit inclusion of "command.h"David Brownell2009-11-161-1/+0
| | | | | | | | | | Lots of files still include it, often through needless duplicate inclusion of "log.h"; sigh. This cleans up the inclusion graph a bunch, so there are fewer inclusion paths, but it doesn't change much otherwise. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* remove annoying $URL$ startup messageDavid Brownell2009-11-141-17/+0
| | | | | | | It's completely unused; the obnoxious "DANGER!!!" comments don't even explain what it was doing (shorthand SVN magic). Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
* command_context_t -> struct command_contextZachary T Welch2009-11-131-6/+6
| | | | Remove misleading typedef and redundant suffix from struct command_context.
* target_t -> struct targetZachary T Welch2009-11-131-1/+1
| | | | Remove misleading typedef and redundant suffix from struct target.
* add src/hello.c to augment new command tutorialZachary T Welch2009-11-131-0/+4
| | | | | | The hello module provides the 'hello' command, printing a greetings to the command console. It can grow to serve as pedagogical example of services that OpenOCD developers should use: a runnable style guide.
* use COMMAND_HANDLER macro to define all commandsZachary T Welch2009-11-131-2/+2
|
* Change most in-tree references from SVN to GIT.dbrownell2009-10-081-1/+3
| | | | | | | | | Also, talk about "mainline" not "trunk". The release.txt and release.sh files need more updates. git-svn-id: svn://svn.berlios.de/openocd/trunk@2825 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Change version labels to work better with GITdbrownell2009-10-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | - The guess-rev.sh script is now a tweaked version of "setlocalversion" as seen in Linux, U-Boot, and various other projects. When it finds source control support (git, hg, svn) it uses IDs from there. Else (specific to this project) it reports itself as "-snapshot", e.g. from gitweb. I verified this new "guess-rev.sh" script runs under Cygwin. - Also update the generic version strings to be like "0.3.0-dev" (during development) instead of the very long "0.3.0-in-development". These also show up in the PDF docs. For better tracking, we might eventually change these strings to include the version IDs too. - Change the startup banner version strings so they include the guess-rev output. Development and release versions with GIT will be like Open On-Chip Debugger 0.3.0-dev-00282-g7191a4f-dirty (2009-10-05-20:57) Open On-Chip Debugger 0.3.0 (2009-10-05-20:57) instead of the previous SVN-specific (even when using git-svn!) Open On-Chip Debugger 0.3.0-in-development (2009-10-05-01:39) svn:exported Open On-Chip Debugger 0.3.0 (2009-10-05-01:39) Release git-svn-id: svn://svn.berlios.de/openocd/trunk@2809 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Andreas Fritiofson <andreas.fritiofson@gmail.com> UTF8 fixesoharboe2009-07-171-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@2549 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Make bug reporting output at program start-ups use fewer new lines:zwelch2009-06-301-2/+3
| | | | | | | | - Move repository URL output associate it with the version; they relate. - 'openocd --version' output now appears much more terse, as expected. git-svn-id: svn://svn.berlios.de/openocd/trunk@2421 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove whitespace that occurs before ')'.zwelch2009-06-231-2/+2
| | | | | | | - Replace '[ \t]*[)]' with ')'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2377 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove whitespace that occurs after '('.zwelch2009-06-231-2/+2
| | | | | | | - Replace '([ \t]*' with '('. git-svn-id: svn://svn.berlios.de/openocd/trunk@2376 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Fixes '=' whitespacezwelch2009-06-231-5/+5
| | | | | | | | | - Replace ')\(=\)\(\w\)' with ') \1 \2'. - Replace '\(\w\)\(=\)(' with '\1 \2 ('. - Replace '\(\w\)\(=\)\(\w\)' with '\1 \2 \3'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2372 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - Fixes '!=' whitespacezwelch2009-06-231-4/+4
| | | | | | | | | - Replace ')\(!=\)\(\w\)' with ') \1 \2'. - Replace '\(\w\)\(!=\)(' with '\1 \2 ('. - Replace '\(\w\)\(!=\)\(\w\)' with '\1 \2 \3'. git-svn-id: svn://svn.berlios.de/openocd/trunk@2363 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Encapsulate the global "jtag" jtag_interface pointer:zwelch2009-05-301-3/+1
| | | | | | | | | - Add jtag_interface_quit, factored from exit_handler() in openocd.c. - Remove its extern declaration. - Add static keyword to its definition. git-svn-id: svn://svn.berlios.de/openocd/trunk@1952 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Audit and eliminate redundant #include directives in main src/ files.zwelch2009-05-111-9/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1716 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Remove redundant sys/types.h #include directives (now in types.h).zwelch2009-05-111-1/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1700 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Reverse revision 1691: all of its functionality has migrated elsewhere.zwelch2009-05-101-2/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1694 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Revive tclapi.c from r1650:zwelch2009-05-101-0/+2
| | | | | | | | | | | | * Remove superfluous #include directives. * Fix warnings and API usage to cure its bit rot. * Build into libhelper library (for now). Add tclapi.h to export tclapi_register_commands(). Register tclapi commands in openocd.c:setup_command_handler(). git-svn-id: svn://svn.berlios.de/openocd/trunk@1691 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* fix embedded buildsoharboe2009-05-031-2/+3
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1598 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Dick Hollenbeck <dick@softplc.com> moved stuff into openocd.c - should never ↵oharboe2009-05-021-0/+15
| | | | | | have been in main.c in the first place. DLL will now build. git-svn-id: svn://svn.berlios.de/openocd/trunk@1590 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Add static keywords to main application helper functions.zwelch2009-05-011-6/+5
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1587 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Dick Hollenbeck <dick@softplc.com>: move OPENOCD_VERSION to use config.hzwelch2009-05-011-2/+5
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1586 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* Fixes for handling release versionskc8apf2009-01-201-1/+1
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1347 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - remove unused includes, fixes build issues under FreeBSDntfreak2009-01-191-8/+0
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1341 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* SVF player courtesy of Simon Qian <simonqian@SimonQian.com>kc8apf2009-01-191-0/+2
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1339 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* moved ioutil init to the right spot: before config scriptsoharboe2009-01-091-7/+7
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1311 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* check syntax for init/versionoharboe2008-12-171-0/+7
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1257 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* work in progress to hook up libmicrohttpd + tcl integrationoharboe2008-12-161-0/+13
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1251 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* sync up to tap_xxx rename + add with-ioutil for standalone openocd ↵oharboe2008-12-151-0/+9
| | | | | | implemetnations git-svn-id: svn://svn.berlios.de/openocd/trunk@1243 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* - remove target specific variant and use target->variant memberntfreak2008-12-131-10/+2
| | | | | | | - fix build warning in cortex_m3 - code cleanup - remove trailing lf and convert c++ comments git-svn-id: svn://svn.berlios.de/openocd/trunk@1238 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* fix telnet async messages. retired telnet_async command - no user ↵oharboe2008-11-051-16/+26
| | | | | | serviceable parts inside. git-svn-id: svn://svn.berlios.de/openocd/trunk@1135 b42882b7-edfa-0310-969c-e2dbd0fdcd60
* unsik Kim <donari75@gmail.com> - mflash supportoharboe2008-10-161-3/+17
| | | | git-svn-id: svn://svn.berlios.de/openocd/trunk@1067 b42882b7-edfa-0310-969c-e2dbd0fdcd60