diff --git a/doc/manual/jtag.txt b/doc/manual/jtag.txt
index 3c8a181ca5619c2c081f8e64aa3a32ffb311f2d6..332b05d9d44a4bdbb95ebaeec28314fc893f295f 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 4c7a9d9de8c67d51c7a47a11cf5f9f4fa7cb42ab..576c9e1a0552d3dc16c9c22193bcf0243e41f19e 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