]> git.sur5r.net Git - openocd/commitdiff
arm9tdmi vector_catch: reserved means "don't use"
authorDavid Brownell <dbrownell@users.sourceforge.net>
Fri, 23 Oct 2009 19:28:03 +0000 (12:28 -0700)
committerDavid Brownell <dbrownell@users.sourceforge.net>
Fri, 23 Oct 2009 19:28:03 +0000 (12:28 -0700)
Bit 5 shouldn't be used.  Remove all support for modifying it.
Matches the exception vector table, of course ... more than one
bootloader uses that non-vector to help distinguish valid boot
images from random garbage in flash.

doc/openocd.texi
src/target/arm9tdmi.c
src/target/arm9tdmi.h

index c9e48bfa9bcf75eb858d1c2c9d4eff6027f676d5..676099429d26b2b49da2c86f4e32420faac32f0c 100644 (file)
@@ -5460,6 +5460,8 @@ 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.
+@c 23-oct-2009:  doesn't work _consistently_ ... as if the ICE
+@c versions have different rules about when they commit writes.
 
 @anchor{arm9tdmi vector_catch}
 @deffn Command {arm9tdmi vector_catch} [@option{all}|@option{none}|list]
@@ -5476,7 +5478,7 @@ vector catch hardware to intercept
 @option{all} of the hardware vectors,
 @option{none} of them,
 or a list with one or more of the following:
-@option{reset} @option{undef} @option{swi} @option{pabt} @option{dabt} @option{reserved}
+@option{reset} @option{undef} @option{swi} @option{pabt} @option{dabt}
 @option{irq} @option{fiq}.
 @end deffn
 
index f941922a5655245d84ccf351a29d43a4e6d0abcb..12b68ae5645fcc7476d28c5639702a8c5c367101 100644 (file)
@@ -95,7 +95,6 @@ static arm9tdmi_vector_t arm9tdmi_vectors[] =
        {"swi", ARM9TDMI_SWI_VECTOR},
        {"pabt", ARM9TDMI_PABT_VECTOR},
        {"dabt", ARM9TDMI_DABT_VECTOR},
-       {"reserved", ARM9TDMI_RESERVED_VECTOR},
        {"irq", ARM9TDMI_IRQ_VECTOR},
        {"fiq", ARM9TDMI_FIQ_VECTOR},
        {0, 0},
@@ -1067,7 +1066,7 @@ int arm9tdmi_register_commands(struct command_context_s *cmd_ctx)
                        "arm9tdmi specific commands");
        register_command(cmd_ctx, arm9tdmi_cmd, "vector_catch",
                        handle_arm9tdmi_catch_vectors_command, COMMAND_EXEC,
-                       "arm9 vector_catch [all|none|reset|undef|swi|pabt|dabt|reserved|irq|fiq] - separate vectors to catch by space");
+                       "arm9 vector_catch [all|none|reset|undef|swi|pabt|dabt|irq|fiq] - separate vectors to catch by space");
 
 
 
index 28be9b6cd32d9cc6e37d30aac2b3747ae4d0f140..9dfa8863103e0d059223ada949dc6acde3c55f4b 100644 (file)
@@ -47,7 +47,7 @@ enum arm9tdmi_vector
        ARM9TDMI_SWI_VECTOR = 0x04,
        ARM9TDMI_PABT_VECTOR = 0x08,
        ARM9TDMI_DABT_VECTOR = 0x10,
-       ARM9TDMI_RESERVED_VECTOR = 0x20,
+       /* BIT(5) reserved -- must be zero */
        ARM9TDMI_IRQ_VECTOR = 0x40,
        ARM9TDMI_FIQ_VECTOR = 0x80,
 };