#include "telnet_server.h"
#include "gdb_server.h"
#include "tcl_server.h"
+#include "httpd.h"
#ifdef HAVE_STRINGS_H
#include <strings.h>
atexit(exit_handler);
+ command_context_mode(CMD_CTX, COMMAND_EXEC);
+
if (target_init(CMD_CTX) != ERROR_OK)
return ERROR_FAIL;
LOG_DEBUG("target init complete");
/* initialize telnet subsystem */
telnet_init("Open On-Chip Debugger");
- gdb_init();
+ gdb_target_add_all(all_targets);
tcl_init(); /* allows tcl to just connect without going thru telnet */
target_register_event_callback(log_target_callback_event_handler, CMD_CTX);
struct command_context *global_cmd_ctx;
-/// src/hello.c gives a simple example for writing new command modules
-int hello_register_commands(struct command_context *cmd_ctx);
-
/* NB! this fn can be invoked outside this file for non PC hosted builds */
struct command_context *setup_command_handler(void)
{
+ log_init();
+ LOG_DEBUG("log_init: complete");
+
struct command_context *cmd_ctx;
global_cmd_ctx = cmd_ctx = command_init(openocd_startup_tcl);
register_commands(cmd_ctx, NULL, openocd_command_handlers);
/* register subsystem commands */
- hello_register_commands(cmd_ctx);
server_register_commands(cmd_ctx);
telnet_register_commands(cmd_ctx);
gdb_register_commands(cmd_ctx);
pld_register_commands(cmd_ctx);
mflash_register_commands(cmd_ctx);
- if (log_init(cmd_ctx) != ERROR_OK)
- {
- exit(-1);
- }
- LOG_DEBUG("log init complete");
+ LOG_DEBUG("command registration: complete");
LOG_OUTPUT(OPENOCD_VERSION "\n");
return cmd_ctx;
}
-int httpd_start(void);
-void httpd_stop(void);
-
-
#if !BUILD_HTTPD && !BUILD_ECOSBOARD
/* implementations of OpenOCD that uses multithreading needs to know when
* OpenOCD is sleeping. No-op in vanilla OpenOCD
return EXIT_FAILURE;
#if BUILD_HTTPD
- if (httpd_start() != ERROR_OK)
+ if (httpd_start(cmd_ctx) != ERROR_OK)
return EXIT_FAILURE;
#endif
if (ret != ERROR_COMMAND_CLOSE_CONNECTION)
{
- command_context_mode(cmd_ctx, COMMAND_EXEC);
if (command_run_line(cmd_ctx, "init") != ERROR_OK)
return EXIT_FAILURE;