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,
|
.register_commands = arm720t_register_commands,
|
||||||
.target_command = arm720t_target_command,
|
.target_command = arm720t_target_command,
|
||||||
.init_target = arm720t_init_target,
|
.init_target = arm720t_init_target,
|
||||||
|
.examine = arm7tdmi_examine,
|
||||||
.quit = arm720t_quit
|
.quit = arm720t_quit
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -86,6 +86,7 @@ target_type_t arm7tdmi_target =
|
||||||
.register_commands = arm7tdmi_register_commands,
|
.register_commands = arm7tdmi_register_commands,
|
||||||
.target_command = arm7tdmi_target_command,
|
.target_command = arm7tdmi_target_command,
|
||||||
.init_target = arm7tdmi_init_target,
|
.init_target = arm7tdmi_init_target,
|
||||||
|
.examine = arm7tdmi_examine,
|
||||||
.quit = arm7tdmi_quit
|
.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)
|
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_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_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_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 */
|
#endif /* ARM7TDMI_H */
|
||||||
|
|
|
@ -90,6 +90,7 @@ target_type_t arm920t_target =
|
||||||
.register_commands = arm920t_register_commands,
|
.register_commands = arm920t_register_commands,
|
||||||
.target_command = arm920t_target_command,
|
.target_command = arm920t_target_command,
|
||||||
.init_target = arm920t_init_target,
|
.init_target = arm920t_init_target,
|
||||||
|
.examine = arm9tdmi_examine,
|
||||||
.quit = arm920t_quit
|
.quit = arm920t_quit
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -90,6 +90,7 @@ target_type_t arm926ejs_target =
|
||||||
.register_commands = arm926ejs_register_commands,
|
.register_commands = arm926ejs_register_commands,
|
||||||
.target_command = arm926ejs_target_command,
|
.target_command = arm926ejs_target_command,
|
||||||
.init_target = arm926ejs_init_target,
|
.init_target = arm926ejs_init_target,
|
||||||
|
.examine = arm9tdmi_examine,
|
||||||
.quit = arm926ejs_quit,
|
.quit = arm926ejs_quit,
|
||||||
.virt2phys = arm926ejs_virt2phys,
|
.virt2phys = arm926ejs_virt2phys,
|
||||||
.mmu = arm926ejs_mmu
|
.mmu = arm926ejs_mmu
|
||||||
|
|
|
@ -81,6 +81,7 @@ target_type_t arm966e_target =
|
||||||
.register_commands = arm966e_register_commands,
|
.register_commands = arm966e_register_commands,
|
||||||
.target_command = arm966e_target_command,
|
.target_command = arm966e_target_command,
|
||||||
.init_target = arm966e_init_target,
|
.init_target = arm966e_init_target,
|
||||||
|
.examine = arm9tdmi_examine,
|
||||||
.quit = arm966e_quit,
|
.quit = arm966e_quit,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -84,6 +84,7 @@ target_type_t arm9tdmi_target =
|
||||||
.register_commands = arm9tdmi_register_commands,
|
.register_commands = arm9tdmi_register_commands,
|
||||||
.target_command = arm9tdmi_target_command,
|
.target_command = arm9tdmi_target_command,
|
||||||
.init_target = arm9tdmi_init_target,
|
.init_target = arm9tdmi_init_target,
|
||||||
|
.examine = arm9tdmi_examine,
|
||||||
.quit = arm9tdmi_quit
|
.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)
|
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);
|
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_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);
|
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,
|
.register_commands = arm926ejs_register_commands,
|
||||||
.target_command = feroceon_target_command,
|
.target_command = feroceon_target_command,
|
||||||
.init_target = feroceon_init_target,
|
.init_target = feroceon_init_target,
|
||||||
|
.examine = arm9tdmi_examine,
|
||||||
.quit = feroceon_quit
|
.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 target_examine(struct command_context_s *cmd_ctx)
|
||||||
{
|
{
|
||||||
int retval = ERROR_OK;
|
int retval = ERROR_OK;
|
||||||
|
@ -448,6 +453,8 @@ int target_examine(struct command_context_s *cmd_ctx)
|
||||||
}
|
}
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int target_init(struct command_context_s *cmd_ctx)
|
int target_init(struct command_context_s *cmd_ctx)
|
||||||
{
|
{
|
||||||
target_t *target = targets;
|
target_t *target = targets;
|
||||||
|
|
Loading…
Reference in New Issue