openocd: fix SPDX tag format for files .c
[fw/openocd] / src / jtag / drivers / amt_jtagaccel.c
index 5aacead4bfc7c659f0d064631ac5db67d7d54310..a4c8f321220bb6675b56f5550077aaac6f2e4ba2 100644 (file)
@@ -1,27 +1,15 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
 /***************************************************************************
  *   Copyright (C) 2005 by Dominic Rath                                    *
  *   Dominic.Rath@gmx.de                                                   *
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) any later version.                                   *
- *                                                                         *
- *   This program is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
- *   GNU General Public License for more details.                          *
- *                                                                         *
- *   You should have received a copy of the GNU General Public License     *
- *   along with this program; if not, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.           *
  ***************************************************************************/
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
 #endif
 
+#include <jtag/adapter.h>
 #include <jtag/interface.h>
 
 #if PARPORT_USE_PPDEV == 1
@@ -200,7 +188,7 @@ static void amt_jtagaccel_state_move(void)
        aw_scan_tms_5 = 0x40 | (tms_scan[0] & 0x1f);
        AMT_AW(aw_scan_tms_5);
        int jtag_speed = 0;
-       int retval = jtag_get_speed(&jtag_speed);
+       int retval = adapter_get_speed(&jtag_speed);
        assert(retval == ERROR_OK);
        if (jtag_speed > 3 || rtck_enabled)
                amt_wait_scan_busy();
@@ -256,7 +244,7 @@ static void amt_jtagaccel_scan(bool ir_scan, enum scan_type type, uint8_t *buffe
        uint8_t aw_tms_scan;
        uint8_t tms_scan[2];
        int jtag_speed_var;
-       int retval = jtag_get_speed(&jtag_speed_var);
+       int retval = adapter_get_speed(&jtag_speed_var);
        assert(retval == ERROR_OK);
 
        if (ir_scan)
@@ -345,48 +333,37 @@ static int amt_jtagaccel_execute_queue(void)
        while (cmd) {
                switch (cmd->type) {
                        case JTAG_RESET:
-#ifdef _DEBUG_JTAG_IO_
-                               LOG_DEBUG("reset trst: %i srst %i",
-                               cmd->cmd.reset->trst,
-                               cmd->cmd.reset->srst);
-#endif
+                               LOG_DEBUG_IO("reset trst: %i srst %i",
+                                               cmd->cmd.reset->trst,
+                                               cmd->cmd.reset->srst);
                                if (cmd->cmd.reset->trst == 1)
                                        tap_set_state(TAP_RESET);
                                amt_jtagaccel_reset(cmd->cmd.reset->trst, cmd->cmd.reset->srst);
                                break;
                        case JTAG_RUNTEST:
-#ifdef _DEBUG_JTAG_IO_
-                               LOG_DEBUG("runtest %i cycles, end in %i",
-                               cmd->cmd.runtest->num_cycles,
-                               cmd->cmd.runtest->end_state);
-#endif
+                               LOG_DEBUG_IO("runtest %i cycles, end in %i",
+                                               cmd->cmd.runtest->num_cycles,
+                                               cmd->cmd.runtest->end_state);
                                amt_jtagaccel_end_state(cmd->cmd.runtest->end_state);
                                amt_jtagaccel_runtest(cmd->cmd.runtest->num_cycles);
                                break;
                        case JTAG_TLR_RESET:
-#ifdef _DEBUG_JTAG_IO_
-                               LOG_DEBUG("statemove end in %i", cmd->cmd.statemove->end_state);
-#endif
+                               LOG_DEBUG_IO("statemove end in %i", cmd->cmd.statemove->end_state);
                                amt_jtagaccel_end_state(cmd->cmd.statemove->end_state);
                                amt_jtagaccel_state_move();
                                break;
                        case JTAG_SCAN:
-#ifdef _DEBUG_JTAG_IO_
-                               LOG_DEBUG("scan end in %i", cmd->cmd.scan->end_state);
-#endif
+                               LOG_DEBUG_IO("scan end in %i", cmd->cmd.scan->end_state);
                                amt_jtagaccel_end_state(cmd->cmd.scan->end_state);
                                scan_size = jtag_build_buffer(cmd->cmd.scan, &buffer);
                                type = jtag_scan_type(cmd->cmd.scan);
                                amt_jtagaccel_scan(cmd->cmd.scan->ir_scan, type, buffer, scan_size);
                                if (jtag_read_buffer(buffer, cmd->cmd.scan) != ERROR_OK)
                                        retval = ERROR_JTAG_QUEUE_FAILED;
-                               if (buffer)
-                                       free(buffer);
+                               free(buffer);
                                break;
                        case JTAG_SLEEP:
-#ifdef _DEBUG_JTAG_IO_
-                               LOG_DEBUG("sleep %" PRIi32, cmd->cmd.sleep->us);
-#endif
+                               LOG_DEBUG_IO("sleep %" PRIu32, cmd->cmd.sleep->us);
                                jtag_sleep(cmd->cmd.sleep->us);
                                break;
                        default:
@@ -405,7 +382,7 @@ int amt_jtagaccel_get_giveio_access(void)
        HANDLE h;
        OSVERSIONINFO version;
 
-       version.dwOSVersionInfoSize = sizeof version;
+       version.dwOSVersionInfoSize = sizeof(version);
        if (!GetVersionEx(&version)) {
                errno = EINVAL;
                return -1;
@@ -550,7 +527,7 @@ COMMAND_HANDLER(amt_jtagaccel_handle_parport_port_command)
                }
        }
 
-       command_print(CMD_CTX, "parport port = %u", amt_jtagaccel_port);
+       command_print(CMD, "parport port = %u", amt_jtagaccel_port);
 
        return ERROR_OK;
 }
@@ -558,7 +535,7 @@ COMMAND_HANDLER(amt_jtagaccel_handle_parport_port_command)
 COMMAND_HANDLER(amt_jtagaccel_handle_rtck_command)
 {
        if (CMD_ARGC == 0) {
-               command_print(CMD_CTX,
+               command_print(CMD,
                        "amt_jtagaccel RTCK feature %s",
                        (rtck_enabled) ? "enabled" : "disabled");
                return ERROR_OK;
@@ -596,12 +573,18 @@ static const struct command_registration amtjtagaccel_command_handlers[] = {
        COMMAND_REGISTRATION_DONE
 };
 
-struct jtag_interface amt_jtagaccel_interface = {
+static struct jtag_interface amt_jtagaccel_interface = {
+       .execute_queue = amt_jtagaccel_execute_queue,
+};
+
+struct adapter_driver amt_jtagaccel_adapter_driver = {
        .name = "amt_jtagaccel",
+       .transports = jtag_only,
        .commands = amtjtagaccel_command_handlers,
 
        .init = amt_jtagaccel_init,
        .quit = amt_jtagaccel_quit,
        .speed = amt_jtagaccel_speed,
-       .execute_queue = amt_jtagaccel_execute_queue,
+
+       .jtag_ops = &amt_jtagaccel_interface,
 };