add openocd.h for top-level declarations
[openocd.git] / src / ecosboard.c
index 419f038ded7a14fc6af4c38e10f3b069d2834ea0..e38316cb7f6045fcf2b7db608311552a674eaa5e 100644 (file)
@@ -36,6 +36,7 @@
 #include "server.h"
 #include "telnet_server.h"
 #include "gdb_server.h"
+#include "openocd.h"
 
 #include <time_support.h>
 #include <sys/time.h>
@@ -114,8 +115,8 @@ static bool writeLog = true;
 char hwaddr[512];
 
 
-extern flash_driver_t *flash_drivers[];
-extern target_type_t *target_types[];
+extern struct flash_driver *flash_drivers[];
+extern struct target_type *target_types[];
 
 #ifdef CYGPKG_PROFILE_GPROF
 #include <cyg/profile/profile.h>
@@ -155,8 +156,8 @@ static char reboot_stack[2048];
 static void zylinjtag_reboot(cyg_addrword_t data)
 {
        serialLog = true;
-       diag_printf("Rebooting in 100 ticks..\n");
-       cyg_thread_delay(100);
+       diag_printf("Rebooting in 500 ticks..\n");
+       cyg_thread_delay(500);
        diag_printf("Unmounting /config..\n");
        umount("/config");
        diag_printf("Rebooting..\n");
@@ -229,7 +230,7 @@ void reboot_port(void)
        cyg_thread_resume(zylinjtag_reboot_port_thread_handle);
 }
 
-int configuration_output_handler(struct command_context_s *context,
+int configuration_output_handler(struct command_context *context,
                const char* line)
 {
        diag_printf("%s", line);
@@ -237,7 +238,7 @@ int configuration_output_handler(struct command_context_s *context,
        return ERROR_OK;
 }
 
-int zy1000_configuration_output_handler_log(struct command_context_s *context,
+int zy1000_configuration_output_handler_log(struct command_context *context,
                const char* line)
 {
        LOG_USER_N("%s", line);
@@ -247,7 +248,7 @@ int zy1000_configuration_output_handler_log(struct command_context_s *context,
 
 #ifdef CYGPKG_PROFILE_GPROF
 
-int eCosBoard_handle_eCosBoard_profile_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
+int eCosBoard_handle_eCosBoard_profile_command(struct command_context *cmd_ctx, char *cmd, char **args, int argc)
 {
        command_print(cmd_ctx, "Profiling started");
        start_profile();
@@ -258,7 +259,7 @@ int eCosBoard_handle_eCosBoard_profile_command(struct command_context_s *cmd_ctx
 
 externC void phi_init_all_network_interfaces(void);
 
-command_context_t *cmd_ctx;
+struct command_context *cmd_ctx;
 
 static bool webRunning = false;
 
@@ -328,6 +329,7 @@ void openocd_sleep_postlude(void)
 
 void format(void)
 {
+#ifdef CYGDAT_IO_FLASH_BLOCK_DEVICE_NAME_1
        diag_printf("Formatting JFFS2...\n");
 
        cyg_io_handle_t handle;
@@ -365,6 +367,7 @@ void format(void)
        }
 
        diag_printf("Flash formatted successfully\n");
+#endif
 
        reboot();
 }
@@ -472,7 +475,6 @@ static int zylinjtag_Jim_Command_reboot(Jim_Interp *interp, int argc,
        return JIM_OK;
 }
 
-
 static void zylinjtag_startNetwork(void)
 {
        // Bring TCP/IP up immediately before we're ready to accept commands.
@@ -503,7 +505,7 @@ static void zylinjtag_startNetwork(void)
 
        Jim_CreateCommand(httpstate.jim_interp, "log", zylinjtag_Jim_Command_log,
                        NULL, NULL);
-       Jim_CreateCommand(httpstate.jim_interp, "reboot",
+       Jim_CreateCommand(httpstate.jim_interp, "zy1000_reboot",
                        zylinjtag_Jim_Command_reboot, NULL, NULL);
        Jim_CreateCommand(httpstate.jim_interp, "threads",
                        zylinjtag_Jim_Command_threads, NULL, NULL);
@@ -589,6 +591,7 @@ static void print_exception_handler(cyg_addrword_t data, cyg_code_t exception,
 
 }
 
+#ifdef CYGNUM_HAL_VECTOR_UNDEF_INSTRUCTION
 static void setHandler(cyg_code_t exception)
 {
        cyg_exception_handler_t *old_handler;
@@ -597,6 +600,7 @@ static void setHandler(cyg_code_t exception)
        cyg_exception_set_handler(exception, print_exception_handler, 0,
                        &old_handler, &old_data);
 }
+#endif
 
 static cyg_thread zylinjtag_uart_thread_object;
 static cyg_handle_t zylinjtag_uart_thread_handle;
@@ -623,6 +627,9 @@ void setNoDelay(int session, int flag)
 #endif
 }
 
+#define TEST_TCPIP() 0
+
+#if TEST_TCPIP
 struct
 {
        int req;
@@ -631,6 +638,7 @@ struct
        int actual2;
 } tcpipSent[512 * 1024];
 int cur;
+#endif
 
 static void zylinjtag_uart(cyg_addrword_t data)
 {
@@ -695,7 +703,9 @@ static void zylinjtag_uart(cyg_addrword_t data)
                size_t pos, pos2;
                pos = 0;
                pos2 = 0;
+#if TEST_TCPIP
                cur = 0;
+#endif
                for (;;)
                {
                        fd_set write_fds;
@@ -740,7 +750,6 @@ static void zylinjtag_uart(cyg_addrword_t data)
                                pos2 = 0;
                        }
 
-                       size_t x = actual2;
                        size_t y = 0;
                        if (actual2 > 0)
                        {
@@ -770,7 +779,6 @@ static void zylinjtag_uart(cyg_addrword_t data)
                                actual += t;
                        }
 
-                       int x2 = actual;
                        int y2 = 0;
                        if (actual > 0)
                        {
@@ -796,6 +804,7 @@ static void zylinjtag_uart(cyg_addrword_t data)
                                }
                                y2 = written;
                        }
+#if TEST_TCPIP
                        if (cur < 1024)
                        {
                                tcpipSent[cur].req = x;
@@ -804,11 +813,12 @@ static void zylinjtag_uart(cyg_addrword_t data)
                                tcpipSent[cur].actual2 = y2;
                                cur++;
                        }
-
+#endif
                }
                closeSession: close(session);
                close(serHandle);
 
+#if TEST_TCPIP
                int i;
                for (i = 0; i < 1024; i++)
                {
@@ -816,6 +826,7 @@ static void zylinjtag_uart(cyg_addrword_t data)
                                        tcpipSent[i].req2, tcpipSent[i].actual2);
 
                }
+#endif
        }
        close(fd);
 
@@ -830,7 +841,7 @@ void startUart(void)
        cyg_thread_resume(zylinjtag_uart_thread_handle);
 }
 
-int handle_uart_command(struct command_context_s *cmd_ctx, char *cmd,
+int handle_uart_command(struct command_context *cmd_ctx, char *cmd,
                char **args, int argc)
 {
        static int current_baud = 38400;
@@ -914,7 +925,7 @@ bool logAllToSerial = false;
 int boolParam(char *var);
 
 
-command_context_t *setup_command_handler(void);
+struct command_context *setup_command_handler(void);
 
 static const char *zylin_config_dir="/config/settings";
 
@@ -926,7 +937,7 @@ static int add_default_dirs(void)
        return ERROR_OK;
 }
 
-int ioutil_init(struct command_context_s *cmd_ctx);
+int ioutil_init(struct command_context *cmd_ctx);
 
 int main(int argc, char *argv[])
 {
@@ -1058,7 +1069,7 @@ int main(int argc, char *argv[])
        add_default_dirs();
 
        /* initialize commandline interface */
-       command_context_t * cmd_ctx;
+       struct command_context * cmd_ctx;
        cmd_ctx = setup_command_handler();
        command_set_output_handler(cmd_ctx, configuration_output_handler, NULL);
        command_context_mode(cmd_ctx, COMMAND_CONFIG);

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)