Hi all,

I have finished my series to convert the tree to use the improved
command registration methodology.  I apologize for the number of patches
in these series; however, only a handful of patches are bigger than 10K,
and most are just boring semi-mechanical transformations.

The following benefits can be expected from this work:
- Command registration is much simpler and easier to read and update. 
- All registrations now get proper error checking.
- Eliminates redundant calls to register command: smaller binaries.
- Improves 'help' display and add new 'usage' command.
- Changes all register_commands callbacks into command_registration *'s.

To facilitate fast and painless review, the patches have been grouped
into sequential series.  These will be posted shortly under this summary
message.  They will contain the following sets of changes:

1) Core upgrades: 
  - updates the core command registration routines,
  - provides the new facilities used in the subsequent series,
    - convert registration to use struct command_registration arrays
    - allows batch registration, better error checking, and more
    - extended to allow command usage information to be provided
  - rewrites the 'unknown' function in C
    - provides proper support for calling N-deep nested commands,
    - removes the magic to try "blah blah" as "blah_blah"

2) Initial conversions:
  - converts helper and top-level modules to use new registration,
  - demonstrates command chaining possibilities in hello.c,
  - updates server and pld modules,
  - removes register_callbacks from pld_device,

3) Update JTAG module: 
  - convert each module to use new registration,
  - remove jtag_interface callback,

4) Update Flash module: 
  - convert each moduleto use new registration,
  - remove flash_driver and nand_controller callbacks,

5) Update Target module:
  - convert each moduleto use new registration, 
  - remove target_type callbacks,
  - remove etm_capture_driver callbacks,

6) Updates made possible/easier after series 1-5:
  - integrate Jim command handlers with command_registration records
  - add support for scripts to update command usage information
  - improve formatting display help output by rewriting cmd_help in C
  - moves 'hello' and 'foo' commands to dummy and faux drivers,
  - add a new 'testee' target driver, which passes 'init' okay,
  - cleanup log initialization; support OPENOCD_DEBUG_LEVEL env var,

Without feedback that holds me back, I will push these when I see fit,
so please consider pulling this tree and testing it for regressions:

   Fetch URL:     git://repo.or.cz/openocd/ztw.git

Let me know what I have missed, or find out when it hits the tree....

Cheers,

Zach
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to