The "arm9tdmi.c" file is more of a generic ARM9 support file;
update comments to say so.  Bugfix some messages which wrongly
assume only ARM9TDMI processors use this code.  Update docs
to clarify that the "arm9tdmi" command prefix is a misnomer.
---
committed ...

 doc/openocd.texi      |   13 +++++++++----
 src/target/arm9tdmi.c |   20 +++++++++++++++++---
 2 files changed, 26 insertions(+), 7 deletions(-)

--- a/doc/openocd.texi
+++ b/doc/openocd.texi
@@ -4931,13 +4931,18 @@ Translate a virtual address @var{va} to 
 and display the result.
 @end deffn
 
-...@subsection ARM9TDMI specific commands
-...@cindex ARM9TDMI
+...@subsection ARM9 specific commands
+...@cindex ARM9
 
-Many ARM9-family CPUs are built around ARM9TDMI integer cores,
-or processors resembling ARM9TDMI, and can use these commands.
+ARM9-family cores are built around ARM9TDMI or ARM9E (including ARM9EJS)
+integer processors.
 Such cores include the ARM920T, ARM926EJ-S, and ARM966.
 
+For historical reasons, one command shared by these cores starts
+with the @command{arm9tdmi} prefix.
+This is true even for ARM9E based processors, which implement the
+ARMv5TE architecture instead of ARMv4T.
+
 @c 9-june-2009:  tried this on arm920t, it didn't work.
 @c no-params always lists nothing caught, and that's how it acts.
 
--- a/src/target/arm9tdmi.c
+++ b/src/target/arm9tdmi.c
@@ -31,6 +31,16 @@
 #include "target_type.h"
 
 
+/*
+ * NOTE:  this holds code that's used with multiple ARM9 processors:
+ *  - ARM9TDMI (ARMv4T) ... in ARM920, ARM922, and ARM940 cores
+ *  - ARM9E-S (ARMv5TE) ... in ARM946, ARM966, and ARM968 cores
+ *  - ARM9EJS (ARMv5TEJ) ... in ARM926 core
+ *
+ * In short, the file name is a misnomer ... it is NOT specific to
+ * that first generation ARM9 processor, or cores using it.
+ */
+
 #if 0
 #define _DEBUG_INSTRUCTION_EXECUTION_
 #endif
@@ -967,8 +977,12 @@ int arm9tdmi_register_commands(struct co
        command_t *arm9tdmi_cmd;
 
        retval = arm7_9_register_commands(cmd_ctx);
-       arm9tdmi_cmd = register_command(cmd_ctx, NULL, "arm9tdmi", NULL, 
COMMAND_ANY, "arm9tdmi specific commands");
-       register_command(cmd_ctx, arm9tdmi_cmd, "vector_catch", 
handle_arm9tdmi_catch_vectors_command, COMMAND_EXEC, "catch arm920t vectors 
['all'|'none'|'<vec1 vec2 ...>']");
+       arm9tdmi_cmd = register_command(cmd_ctx, NULL, "arm9tdmi",
+                       NULL, COMMAND_ANY,
+                       "arm9tdmi specific commands");
+       register_command(cmd_ctx, arm9tdmi_cmd, "vector_catch",
+                       handle_arm9tdmi_catch_vectors_command, COMMAND_EXEC,
+                       "catch arm9 vectors ['all'|'none'|'<vec1 vec2 ...>']");
 
        return retval;
 }
@@ -985,7 +999,7 @@ int handle_arm9tdmi_catch_vectors_comman
 
        if (arm9tdmi_get_arch_pointers(target, &armv4_5, &arm7_9, &arm9tdmi) != 
ERROR_OK)
        {
-               command_print(cmd_ctx, "current target isn't an ARM9TDMI based 
target");
+               command_print(cmd_ctx, "current target isn't an ARM9 based 
target");
                return ERROR_OK;
        }
 
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to