diff options
author | David Brownell <dbrownell@users.sourceforge.net> | 2009-10-12 02:39:18 -0700 |
---|---|---|
committer | David Brownell <dbrownell@users.sourceforge.net> | 2009-10-12 02:39:18 -0700 |
commit | 5e837387aa7260518cf43f53b66ee917d8660802 (patch) | |
tree | dcda25c76c4173ef34f5e01b4eced145bcb76e8f /src/target/xscale.h | |
parent | 9f6c23f47932eba99acd90949d0388e5ef1fbe35 (diff) |
simplify XScale debug handler installation
Load the XScale debug handler from the read-only data section
instead of from a separate file that can get lost or garbaged.
This eliminates installation and versioning issues, and also
speeds up reset handling a bit.
Plus some minor bits of cleanup related to loading that handler:
comments about just what this handler does, and check fault codes
while writing it into the mini-icache.
The only behavioral changes should be cleaner failure modes after
errors during handler loading, and being a bit faster.
NOTE: presumes GNU assembly syntax, with ".incbin"; and ELF,
because of the syntax of the ".size" directive.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Diffstat (limited to 'src/target/xscale.h')
-rw-r--r-- | src/target/xscale.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/target/xscale.h b/src/target/xscale.h index a5d83ee6..9d92550a 100644 --- a/src/target/xscale.h +++ b/src/target/xscale.h @@ -170,4 +170,10 @@ enum #define ERROR_XSCALE_NO_TRACE_DATA (-1500) +/* This XScale "debug handler" is loaded into the processor's + * mini-ICache, which is 2K of code writable only via JTAG. + */ +extern const uint8_t xscale_debug_handler[]; +extern const uint32_t xscale_debug_handler_size; + #endif /* XSCALE_H */ |