]> git.sur5r.net Git - openocd/blobdiff - src/target/avr32_ap7k.c
tcl/target: ti_tms570.cfg restructure dap support
[openocd] / src / target / avr32_ap7k.c
index c8f0f8e819bcaede08b7e7d62bc484ac5e8e478d..f8da8d5ac7d8ca24f161bbafd21a95a846aee6cf 100644 (file)
@@ -15,9 +15,7 @@
  *   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.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ *   along with this program.  If not, see <http://www.gnu.org/licenses/>. *
  ***************************************************************************/
 
 #ifdef HAVE_CONFIG_H
 #include "avr32_regs.h"
 #include "avr32_ap7k.h"
 
-static char *avr32_core_reg_list[] = {
+static const char * const avr32_core_reg_list[] = {
        "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8",
        "r9", "r10", "r11", "r12", "sp", "lr", "pc", "sr"
 };
 
-static struct avr32_core_reg
+static const struct avr32_core_reg
        avr32_core_reg_list_arch_info[AVR32NUMCOREREGS] = {
        {0, NULL, NULL},
        {1, NULL, NULL},
@@ -178,7 +176,7 @@ static struct reg_cache *avr32_build_reg_cache(struct target *target)
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
        struct reg_cache **cache_p = register_get_last_cache_p(&target->reg_cache);
        struct reg_cache *cache = malloc(sizeof(struct reg_cache));
-       struct reg *reg_list = malloc(sizeof(struct reg) * num_regs);
+       struct reg *reg_list = calloc(num_regs, sizeof(struct reg));
        struct avr32_core_reg *arch_info =
                malloc(sizeof(struct avr32_core_reg) * num_regs);
        int i;
@@ -313,15 +311,8 @@ static int avr32_ap7k_deassert_reset(struct target *target)
        return ERROR_OK;
 }
 
-static int avr32_ap7k_soft_reset_halt(struct target *target)
-{
-       LOG_ERROR("%s: implement me", __func__);
-
-       return ERROR_OK;
-}
-
 static int avr32_ap7k_resume(struct target *target, int current,
-       uint32_t address, int handle_breakpoints, int debug_execution)
+       target_addr_t address, int handle_breakpoints, int debug_execution)
 {
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
        struct breakpoint *breakpoint = NULL;
@@ -357,7 +348,7 @@ static int avr32_ap7k_resume(struct target *target, int current,
                /* Single step past breakpoint at current address */
                breakpoint = breakpoint_find(target, resume_pc);
                if (breakpoint) {
-                       LOG_DEBUG("unset breakpoint at 0x%8.8" PRIx32 "", breakpoint->address);
+                       LOG_DEBUG("unset breakpoint at 0x%8.8" TARGET_PRIxADDR "", breakpoint->address);
 #if 0
                        avr32_ap7k_unset_breakpoint(target, breakpoint);
                        avr32_ap7k_single_step_core(target);
@@ -403,7 +394,7 @@ static int avr32_ap7k_resume(struct target *target, int current,
 }
 
 static int avr32_ap7k_step(struct target *target, int current,
-       uint32_t address, int handle_breakpoints)
+       target_addr_t address, int handle_breakpoints)
 {
        LOG_ERROR("%s: implement me", __func__);
 
@@ -440,12 +431,12 @@ static int avr32_ap7k_remove_watchpoint(struct target *target,
        return ERROR_OK;
 }
 
-static int avr32_ap7k_read_memory(struct target *target, uint32_t address,
+static int avr32_ap7k_read_memory(struct target *target, target_addr_t address,
        uint32_t size, uint32_t count, uint8_t *buffer)
 {
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
 
-       LOG_DEBUG("address: 0x%8.8" PRIx32 ", size: 0x%8.8" PRIx32 ", count: 0x%8.8" PRIx32 "",
+       LOG_DEBUG("address: 0x%8.8" TARGET_PRIxADDR ", size: 0x%8.8" PRIx32 ", count: 0x%8.8" PRIx32 "",
                address,
                size,
                count);
@@ -481,12 +472,12 @@ static int avr32_ap7k_read_memory(struct target *target, uint32_t address,
        return ERROR_OK;
 }
 
-static int avr32_ap7k_write_memory(struct target *target, uint32_t address,
+static int avr32_ap7k_write_memory(struct target *target, target_addr_t address,
        uint32_t size, uint32_t count, const uint8_t *buffer)
 {
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
 
-       LOG_DEBUG("address: 0x%8.8" PRIx32 ", size: 0x%8.8" PRIx32 ", count: 0x%8.8" PRIx32 "",
+       LOG_DEBUG("address: 0x%8.8" TARGET_PRIxADDR ", size: 0x%8.8" PRIx32 ", count: 0x%8.8" PRIx32 "",
                address,
                size,
                count);
@@ -551,7 +542,7 @@ static int avr32_ap7k_examine(struct target *target)
        if (!target_was_examined(target)) {
                target_set_examined(target);
                avr32_jtag_nexus_read(&ap7k->jtag, AVR32_OCDREG_DID, &devid);
-               LOG_INFO("device id: %08x", devid);
+               LOG_INFO("device id: %08" PRIx32, devid);
                avr32_ocd_setbits(&ap7k->jtag, AVR32_OCDREG_DC, OCDREG_DC_DBE);
                avr32_jtag_nexus_read(&ap7k->jtag, AVR32_OCDREG_DS, &ds);
 
@@ -566,15 +557,6 @@ static int avr32_ap7k_examine(struct target *target)
        return ERROR_OK;
 }
 
-static int avr32_ap7k_bulk_write_memory(struct target *target, uint32_t address,
-       uint32_t count, const uint8_t *buffer)
-{
-       LOG_ERROR("%s: implement me", __func__);
-
-       return ERROR_OK;
-}
-
-
 int avr32_ap7k_arch_state(struct target *target)
 {
        struct avr32_ap7k_common *ap7k = target_to_ap7k(target);
@@ -585,7 +567,8 @@ int avr32_ap7k_arch_state(struct target *target)
        return ERROR_OK;
 }
 
-int avr32_ap7k_get_gdb_reg_list(struct target *target, struct reg **reg_list[], int *reg_list_size)
+int avr32_ap7k_get_gdb_reg_list(struct target *target, struct reg **reg_list[],
+               int *reg_list_size, enum target_register_class reg_class)
 {
 #if 0
        /* get pointers to arch-specific information */
@@ -608,29 +591,23 @@ int avr32_ap7k_get_gdb_reg_list(struct target *target, struct reg **reg_list[],
        return ERROR_FAIL;
 }
 
-
-
 struct target_type avr32_ap7k_target = {
        .name = "avr32_ap7k",
 
        .poll = avr32_ap7k_poll,
        .arch_state = avr32_ap7k_arch_state,
 
-       .target_request_data = NULL,
-
        .halt = avr32_ap7k_halt,
        .resume = avr32_ap7k_resume,
        .step = avr32_ap7k_step,
 
        .assert_reset = avr32_ap7k_assert_reset,
        .deassert_reset = avr32_ap7k_deassert_reset,
-       .soft_reset_halt = avr32_ap7k_soft_reset_halt,
 
        .get_gdb_reg_list = avr32_ap7k_get_gdb_reg_list,
 
        .read_memory = avr32_ap7k_read_memory,
        .write_memory = avr32_ap7k_write_memory,
-       .bulk_write_memory = avr32_ap7k_bulk_write_memory,
        /* .checksum_memory = avr32_ap7k_checksum_memory, */
        /* .blank_check_memory = avr32_ap7k_blank_check_memory, */