From 6c39b5dd52969c1927c5115e24bb8a1fc9555349 Mon Sep 17 00:00:00 2001 From: zwelch Date: Wed, 3 Jun 2009 02:57:55 +0000 Subject: Add architectural introduction to the JTAG module in The Manual. git-svn-id: svn://svn.berlios.de/openocd/trunk@2024 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- doc/manual/jtag.txt | 49 ++++++++++++++++++++++++++++++++++++------------- doc/manual/main.txt | 6 +++--- 2 files changed, 39 insertions(+), 16 deletions(-) (limited to 'doc/manual') diff --git a/doc/manual/jtag.txt b/doc/manual/jtag.txt index 3c8a181c..332b05d9 100644 --- a/doc/manual/jtag.txt +++ b/doc/manual/jtag.txt @@ -1,38 +1,61 @@ -/** @page jtagdocs OpenOCD JTAG APIs +/** @page jtagdocs JTAG APIs For new developers unfamiliar with the technology, @ref primerjtag provides a brief introduction to the IEEE JTAG interface. -The OpenOCD JTAG library API covers several functional areas: - - - @subpage jtagcable - - @subpage jtagtap - - @subpage jtagmdriver - - @subpage jtagdriver - -This section needs to be expanded. +The OpenOCD JTAG library API covers several functional areas. The jtag +@b core communicates through the @b minidriver API with either its full +@a driver implementation (src/jtag/jtag_driver.c) or a @a minidriver . +Internally, the @b command API is used by the JTAG driver for managing +asynchronous transactions. + +- @subpage jtagcore + - @b public API routines + - declared in @c src/jtag/jtag.h + - used by other modules + +- @subpage jtagcmd + - @b private command queue API + - declared in @c src/jtag/commands.h + - provides routines used internally by the full JTAG drivers. + +- @subpage jtagiface + - @b private interface driver API + - declared in @c src/jtag/interface.h + - used by the core, minidrivers, and the full interface device drivers. + - allows implementing new interface device drivers. + - includes the Cable/TAP API (commands starting with @c tap_) + +- @subpage jtagdriver + - @b private minidriver API + - declared in @c src/jtag/minidriver.h + - used @a only by the core and minidriver implementations: + - @c jtag_driver.c (in-tree OpenOCD drivers) + - @c zy1000/build/include/jtag_minidriver.h (ZY1000 minidriver) + - future implementations (on other embedded hosts) + - interface device drivers do @b not need this API. */ -/** @page jtagcable OpenOCD JTAG Cable API +/** @page jtagcore JTAG Core API This section needs to be expanded. */ -/** @page jtagtap OpenOCD JTAG TAP API +/** @page jtagcmd JTAG Command API This section needs to be expanded. */ -/** @page jtagmdriver OpenOCD JTAG Interface API +/** @page jtagiface JTAG Interface API This section needs to be expanded. */ -/** @page jtagdriver OpenOCD JTAG Driver API +/** @page jtagdriver JTAG Minidriver API This section needs to be expanded. diff --git a/doc/manual/main.txt b/doc/manual/main.txt index 4c7a9d9d..576c9e1a 100644 --- a/doc/manual/main.txt +++ b/doc/manual/main.txt @@ -68,9 +68,9 @@ modules are stacked in the current implementation (from bottom to top): - @ref helpercommand - @ref helperlogging - @subpage jtagdocs - - @ref jtagcable - - @ref jtagtap - - @ref jtagmdriver + - @ref jtagcore + - @ref jtagcmd + - @ref jtagiface - @ref jtagdriver - @subpage targetdocs - @ref targetarm -- cgit v1.2.3