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