First step in hiding target_type_s from public interface:
[fw/openocd] / src / target / arm966e.c
index 407547818efc2ca5dbaccb14b4a8299947ef1118..7f39d3a769c69e2cea4f3e705827355604640634 100644 (file)
 #include "config.h"
 #endif
 
+#define DEFINE_TARGET_TYPE_S
 #include "arm966e.h"
 
-#include "arm7_9_common.h"
-#include "register.h"
-#include "target.h"
-#include "armv4_5.h"
-#include "embeddedice.h"
-#include "log.h"
-#include "jtag.h"
-#include "arm_jtag.h"
-
-#include <stdlib.h>
-#include <string.h>
 
 #if 0
 #define _DEBUG_INSTRUCTION_EXECUTION_
@@ -178,7 +168,7 @@ int arm966e_read_cp15(target_t *target, int reg_addr, u32 *value)
        u8 nr_w_buf = 0;
 
        jtag_add_end_state(TAP_IDLE);
-       if((retval = arm_jtag_scann(jtag_info, 0xf)) != ERROR_OK)
+       if ((retval = arm_jtag_scann(jtag_info, 0xf)) != ERROR_OK)
        {
                return retval;
        }
@@ -188,32 +178,28 @@ int arm966e_read_cp15(target_t *target, int reg_addr, u32 *value)
        fields[0].num_bits = 32;
        fields[0].out_value = NULL;
        fields[0].in_value = NULL;
-       fields[0].in_handler = NULL;
 
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 6;
        fields[1].out_value = &reg_addr_buf;
        fields[1].in_value = NULL;
-       fields[1].in_handler = NULL;
 
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = &nr_w_buf;
        fields[2].in_value = NULL;
-       fields[2].in_handler = NULL;
 
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
-       u8 tmp[4];
-       fields[1].in_value = tmp;
+       fields[1].in_value = (u8 *)value;
 
-       jtag_add_dr_scan_now(3, fields, TAP_INVALID);
+       jtag_add_dr_scan(3, fields, TAP_INVALID);
 
-       *value=le_to_h_u32(tmp);
+       jtag_add_callback(arm_le_to_h_u32, (u8 *)value);
 
 
 #ifdef _DEBUG_INSTRUCTION_EXECUTION_
-       if((retval = jtag_execute_queue()) != ERROR_OK)
+       if ((retval = jtag_execute_queue()) != ERROR_OK)
        {
                return retval;
        }
@@ -237,7 +223,7 @@ int arm966e_write_cp15(target_t *target, int reg_addr, u32 value)
        buf_set_u32(value_buf, 0, 32, value);
 
        jtag_add_end_state(TAP_IDLE);
-       if((retval = arm_jtag_scann(jtag_info, 0xf)) != ERROR_OK)
+       if ((retval = arm_jtag_scann(jtag_info, 0xf)) != ERROR_OK)
        {
                return retval;
        }
@@ -246,33 +232,18 @@ int arm966e_write_cp15(target_t *target, int reg_addr, u32 value)
        fields[0].tap = jtag_info->tap;
        fields[0].num_bits = 32;
        fields[0].out_value = value_buf;
-
        fields[0].in_value = NULL;
 
-
-       fields[0].in_handler = NULL;
-
-
        fields[1].tap = jtag_info->tap;
        fields[1].num_bits = 6;
        fields[1].out_value = &reg_addr_buf;
-
        fields[1].in_value = NULL;
 
-
-       fields[1].in_handler = NULL;
-
-
        fields[2].tap = jtag_info->tap;
        fields[2].num_bits = 1;
        fields[2].out_value = &nr_w_buf;
-
        fields[2].in_value = NULL;
 
-
-       fields[2].in_handler = NULL;
-
-
        jtag_add_dr_scan(3, fields, TAP_INVALID);
 
 #ifdef _DEBUG_INSTRUCTION_EXECUTION_
@@ -319,7 +290,7 @@ int arm966e_handle_cp15_command(struct command_context_s *cmd_ctx, char *cmd, ch
                                command_print(cmd_ctx, "couldn't access reg %i", address);
                                return ERROR_OK;
                        }
-                       if((retval = jtag_execute_queue()) != ERROR_OK)
+                       if ((retval = jtag_execute_queue()) != ERROR_OK)
                        {
                                return retval;
                        }