Wip - split target setup and target examination
git-svn-id: svn://svn.berlios.de/openocd/trunk@564 b42882b7-edfa-0310-969c-e2dbd0fdcd60__archive__
parent
7805be1b3a
commit
0d7d64b5e9
|
@ -81,6 +81,7 @@ target_type_t arm720t_target =
|
|||
.register_commands = arm720t_register_commands,
|
||||
.target_command = arm720t_target_command,
|
||||
.init_target = arm720t_init_target,
|
||||
.examine = arm7tdmi_examine,
|
||||
.quit = arm720t_quit
|
||||
};
|
||||
|
||||
|
|
|
@ -86,6 +86,7 @@ target_type_t arm7tdmi_target =
|
|||
.register_commands = arm7tdmi_register_commands,
|
||||
.target_command = arm7tdmi_target_command,
|
||||
.init_target = arm7tdmi_init_target,
|
||||
.examine = arm7tdmi_examine,
|
||||
.quit = arm7tdmi_quit
|
||||
};
|
||||
|
||||
|
@ -753,6 +754,11 @@ void arm7tdmi_build_reg_cache(target_t *target)
|
|||
}
|
||||
}
|
||||
|
||||
int arm7tdmi_examine(struct command_context_s *cmd_ctx, struct target_s *target)
|
||||
{
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
int arm7tdmi_init_target(struct command_context_s *cmd_ctx, struct target_s *target)
|
||||
{
|
||||
|
||||
|
|
|
@ -40,6 +40,7 @@ typedef struct arm7tdmi_common_s
|
|||
int arm7tdmi_register_commands(struct command_context_s *cmd_ctx);
|
||||
int arm7tdmi_init_arch_info(target_t *target, arm7tdmi_common_t *arm7tdmi, int chain_pos, char *variant);
|
||||
int arm7tdmi_init_target(struct command_context_s *cmd_ctx, struct target_s *target);
|
||||
int arm7tdmi_examine(struct command_context_s *cmd_ctx, struct target_s *target);
|
||||
|
||||
|
||||
#endif /* ARM7TDMI_H */
|
||||
|
|
|
@ -90,6 +90,7 @@ target_type_t arm920t_target =
|
|||
.register_commands = arm920t_register_commands,
|
||||
.target_command = arm920t_target_command,
|
||||
.init_target = arm920t_init_target,
|
||||
.examine = arm9tdmi_examine,
|
||||
.quit = arm920t_quit
|
||||
};
|
||||
|
||||
|
|
|
@ -90,6 +90,7 @@ target_type_t arm926ejs_target =
|
|||
.register_commands = arm926ejs_register_commands,
|
||||
.target_command = arm926ejs_target_command,
|
||||
.init_target = arm926ejs_init_target,
|
||||
.examine = arm9tdmi_examine,
|
||||
.quit = arm926ejs_quit,
|
||||
.virt2phys = arm926ejs_virt2phys,
|
||||
.mmu = arm926ejs_mmu
|
||||
|
|
|
@ -81,6 +81,7 @@ target_type_t arm966e_target =
|
|||
.register_commands = arm966e_register_commands,
|
||||
.target_command = arm966e_target_command,
|
||||
.init_target = arm966e_init_target,
|
||||
.examine = arm9tdmi_examine,
|
||||
.quit = arm966e_quit,
|
||||
};
|
||||
|
||||
|
|
|
@ -84,6 +84,7 @@ target_type_t arm9tdmi_target =
|
|||
.register_commands = arm9tdmi_register_commands,
|
||||
.target_command = arm9tdmi_target_command,
|
||||
.init_target = arm9tdmi_init_target,
|
||||
.examine = arm9tdmi_examine,
|
||||
.quit = arm9tdmi_quit
|
||||
};
|
||||
|
||||
|
@ -859,6 +860,11 @@ void arm9tdmi_build_reg_cache(target_t *target)
|
|||
}
|
||||
}
|
||||
|
||||
int arm9tdmi_examine(struct command_context_s *cmd_ctx, struct target_s *target)
|
||||
{
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
int arm9tdmi_init_target(struct command_context_s *cmd_ctx, struct target_s *target)
|
||||
{
|
||||
|
||||
|
|
|
@ -56,6 +56,7 @@ enum arm9tdmi_vector
|
|||
};
|
||||
|
||||
extern int arm9tdmi_init_target(struct command_context_s *cmd_ctx, struct target_s *target);
|
||||
int arm9tdmi_examine(struct command_context_s *cmd_ctx, struct target_s *target);
|
||||
extern int arm9tdmi_init_arch_info(target_t *target, arm9tdmi_common_t *arm9tdmi, int chain_pos, char *variant);
|
||||
extern int arm9tdmi_register_commands(struct command_context_s *cmd_ctx);
|
||||
|
||||
|
|
|
@ -94,6 +94,7 @@ target_type_t feroceon_target =
|
|||
.register_commands = arm926ejs_register_commands,
|
||||
.target_command = feroceon_target_command,
|
||||
.init_target = feroceon_init_target,
|
||||
.examine = arm9tdmi_examine,
|
||||
.quit = feroceon_quit
|
||||
};
|
||||
|
||||
|
|
|
@ -436,6 +436,11 @@ static int default_examine(struct command_context_s *cmd_ctx, struct target_s *t
|
|||
}
|
||||
|
||||
|
||||
/* Targets that correctly implement init+examine, i.e.
|
||||
* no communication with target during init:
|
||||
*
|
||||
* XScale
|
||||
*/
|
||||
int target_examine(struct command_context_s *cmd_ctx)
|
||||
{
|
||||
int retval = ERROR_OK;
|
||||
|
@ -448,6 +453,8 @@ int target_examine(struct command_context_s *cmd_ctx)
|
|||
}
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
int target_init(struct command_context_s *cmd_ctx)
|
||||
{
|
||||
target_t *target = targets;
|
||||
|
|
Loading…
Reference in New Issue