| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Changes the jtag_interface->register_callbacks field to a list of
commands to be registered. Changes callback to invocation of
register_commands() with that command registration list. Removes all
JTAG interface driver register_command callback functions, which the
previous commits had converted into identical calls.
|
|
|
|
| |
Use register_commands() with command registration array.
|
|
|
|
| |
Use register commands with command registration array.
|
|
|
|
| |
Use register_commands() with command registration array.
|
|
|
|
| |
Use register_commands() with a command registration array.
|
|
|
|
| |
Use register_commands() with command registration array.
|
|
|
|
| |
Use register_commands() with command registration array.
|
|
|
|
| |
Use register_commands() with a command registration array.
|
|
|
|
|
|
|
| |
Use register_commands() with command registration array.
---
This module was broken by previous changes, but no one has complained.
Are there still users for this modules?
|
|
|
|
| |
Uses register_commands() with command registration array.
|
|
|
|
| |
Use register_commands() with command_registration array.
|
|
|
|
|
| |
Remove register_callbacks from pld_device structure, using an array
of command_registration records instead.
|
|
|
|
| |
Updates core PLD and virtex2 commands to use register_commands().
|
|
|
|
| |
Use register_commands() for registering {,x}svf commands.
|
|
|
|
| |
Converts server directory to use new command registration paradigm.
|
|
|
|
|
| |
Use register_commands() for logging callbacks. Improve help and add
proper usage.
|
|
|
|
| |
Use table instead of individual calls. Add proper usage information.
|
|
|
|
| |
Use register_commands() for top-level version and init command.
|
|
|
|
|
|
| |
Use the new command registration chaining capabilities to eliminate
the foo_register_commands helper, folding its remaining command
handler setup into the hello_command_handlers registration array.
|
|
|
|
| |
Use new register_commands() with command registration table.
|
|
|
|
|
| |
Rewrite the magical 'unknown' command in C as a Jim handler, allowing
it to dispatch commands to any level in the tree.
|
|
|
|
|
| |
Allow other modules to find a command, primarily for the purpose of
registering and unregistering subcommands.
|
|
|
|
| |
Move command context acquisition to current_command_context() for re-use.
|
|
|
|
|
|
|
|
|
| |
Adds the ability to chain registration structures. Modules can define a
command with the 'chain' and 'num_chain' fields defined in their
registration table, and the register_commands() function will initialize
these commands. If the registration record creates a new command, then
the chained commands are created under it; otherwise, they are created
in the same context as the other commands (i.e. the parent argument).
|
|
|
|
|
| |
Split out the handler registration into its own function, and add a
few obviously missing NULL pointer error checking.
|
|
|
|
|
|
| |
Use register_commands() to register low-level command handlers,
adding a builtin_command_handlers declaration that is easy to understand.
Splits help and usage information into their appropriate fields.
|
|
|
|
|
|
| |
Adds the usage command, to display usage information for commands.
The output for this command will remain erronenously empty until
commands are updated to use these new coventions.
|
|
|
|
|
|
| |
The register_commands API takes multiple commands in one call, allowing
modules to declare and pass a much simpler (and more explicit) array of
command_registration records.
|
|
|
|
|
|
|
|
|
| |
Add a structure to encapsulate command registration information, rather
than passing them all as parameters. Enables further API changes that
require additional required or optional parameters.
Updates the register_command API and COMMAND_REGISTER macro to use it,
along with their documentation.
|
|
|
|
|
| |
Replaces direct calls to register_command() with a macro, to allow
its parameters to be changed and callers updated in phases.
|
|
|
|
|
|
|
|
| |
Provides a migration path for the widely used register_command API,
which needs to be updated to provide new functionality.
This macro allows the API to change without having to update all of its
callers at the same time.
|
|
|
|
|
| |
Fix a couple of layering violations missed in the last round.
Add missing comment headers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was a lot of needless handshaking overhead in the current
Cortex-A8 DCC/ITR operations, since the status read by each step
was discarded rather than letting the next step know it.
This shrinks the handshaking by: (a) passing status along from
previous steps, avoiding re-fetching; which enables the big win
(b) relying on a useful invariant: that the DSCR_INSTR_COMP bit
is set after every call to a DPM method.
A "reg sp_usr" call previously took 17 flushes; now it takes just 9.
This visibly speeds common operations like entry to debug state and
stepping, as well as "arm reg" and so on.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
|
|
|
|
|
|
|
|
|
| |
This replaces two versions of register access functions. One
was commented out, and seemed to have uncertain intent. The
other was fairly new, and helped motivate the DPM framework
once I observed that the ARM11 was doing the very same ops.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
|
|
|
|
|
|
|
|
| |
This implements the DPM interface for Cortex-A8 cores. It
also adds a synchronization operation to the DPM framework,
which is needed by the Cortex-A8 after CPSR writes.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
|
|
|
|
|
|
|
|
| |
Make various functions static, add some comments, report
vector catch as a flavor of DBG_REASON_BREAKPOINT, get
rid of needless/undesirable ARMV4_5_CORE_REG_MODE, etc.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous implementation was unnecessarily complex. Get rid of the loops,
let vsnprintf() tell us directly how much storage we need and allocate that. A
second pass writes the actual string. Also add a va_end() that was missing.
This should be much faster for large strings and less wasteful for small ones.
A quirk that has been retained is that some callers patch in a newline at the
end of the returned string and depend on alloc_vprintf to allocate at least
one byte extra.
Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Signed-off-by: Zachary T Welch <zw@superlucidity.net>
|
|
|
|
|
| |
Update build rules to skip the PDF unless the TeX has been created.
Also, fixes a warning regarding pattern rules being a GNU make trick.
|
|
|
|
| |
Rewrite jlink_usb_open to use jtag_usb_open helper.
|
|
|
|
|
| |
Rewrite logic to remove indentation in jlink_usb_open, in prep
for further surgery.
|
|
|
|
|
|
|
| |
Rewrite rlink_init routine to use jtag_usb_open helper. Eliminates
some spurious calls to exit().
Wraps a tremendously long line of comment to fit 80 columns too.
|
|
|
|
| |
Rework rlink_init to use less indentation. Best viewed with diff -w.
|
|
|
|
|
|
| |
Rewrite vsllink_usb_open to use jtag_usb_open helper.
Eliminates spurious calls to exit().
|
|
|
|
| |
Rewrite usbprob_jtag_open to use jtag_usb_open helper.
|
|
|
|
| |
Rewrite armjtagwe_usb_open to use jtag_usb_open.
|
|
|
|
|
|
|
|
| |
Begins to consolidate code used by several USB JTAG interfaces.
This first patch provides the required build system changes and
a common jtag_usb_open routine, which will replace the guts for
probing the busses and devices for possible VID/PID matches.
The following patches convert each driver to use it.
|