From 0fe50d77de181f86506c7695189e0b7fb0ad3764 Mon Sep 17 00:00:00 2001
From: joerg_wunsch <joerg_wunsch@81a1dc3b-b13d-400b-aceb-764788c761c2>
Date: Thu, 27 Feb 2014 13:32:58 +0000
Subject: [PATCH] Documentation updates for EDBG.

git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1285 81a1dc3b-b13d-400b-aceb-764788c761c2
---
 ChangeLog        |  5 +++++
 avrdude.1        |  3 +++
 doc/avrdude.texi | 22 ++++++++++++++--------
 3 files changed, 22 insertions(+), 8 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 2a8f8cf1..dd17bdf3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-02-27  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
+
+	* avrdude.1: Documentation update for EDBG.
+	* doc/avrdude.texi: (Dito.)
+
 2014-02-27  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
 
 	* jtag3.c: For EDBG protocol, always use 512-byte block I/O.  The
diff --git a/avrdude.1 b/avrdude.1
index ef9638ce..aa9997e3 100644
--- a/avrdude.1
+++ b/avrdude.1
@@ -150,6 +150,9 @@ For ATxmega devices, the JTAG ICE mkII is supported in PDI mode, provided it
 has a revision 1 hardware and firmware version of at least 5.37 (decimal).
 For ATxmega devices, the JTAGICE3 is supported in PDI mode.
 .Pp
+Atmel's XplainedPro boards, using the EDBG protocol (CMSIS-DAP compatible),
+are supported using the "jtag3" programmer type.
+.Pp
 The AVR Dragon is supported in all modes (ISP, JTAG, HVSP, PP, debugWire).
 When used in JTAG and debugWire mode, the AVR Dragon behaves similar to a
 JTAG ICE mkII, so all device-specific comments for that device
diff --git a/doc/avrdude.texi b/doc/avrdude.texi
index 76482e68..3514f265 100644
--- a/doc/avrdude.texi
+++ b/doc/avrdude.texi
@@ -148,7 +148,7 @@ programming fuse/lock bits, etc.
 AVRDUDE supports the following basic programmer types: Atmel's STK500,
 Atmel's AVRISP and AVRISP mkII devices,
 Atmel's STK600,
-Atmel's JTAG ICE (both mkI and mkII, the latter also in ISP mode), appnote
+Atmel's JTAG ICE (the original one, mkII, and 3, the latter two also in ISP mode), appnote
 avr910, appnote avr109 (including the AVR Butterfly),
 serial bit-bang adapters,
 and the PPI (parallel port interface). PPI represents a class
@@ -181,7 +181,7 @@ the 74HC244. Have a look at http://kolev.info/avrdude-linuxgpio for a more
 detailed tutorial about using this programmer type.
 
 The STK500, JTAG ICE, avr910, and avr109/butterfly use the serial port to communicate with the PC.
-The STK600, JTAG ICE mkII, AVRISP mkII, USBasp, avrftdi (and derivitives), and USBtinyISP
+The STK600, JTAG ICE mkII/3, AVRISP mkII, USBasp, avrftdi (and derivitives), and USBtinyISP
 programmers communicate through the USB, using @code{libusb} as a
 platform abstraction layer.
 The avrftdi adds support for the FT2232C/D, FT2232H, and FT4232H devices. These all use 
@@ -207,12 +207,15 @@ protocol is more sophisticated.
 (The JTAG ICE mkII protocol can also be run on top of USB.)
 Only the memory programming functionality of the JTAG ICE is supported
 by AVRDUDE.
-For the JTAG ICE mkII, JTAG, debugWire and ISP mode are supported, provided
+For the JTAG ICE mkII/3, JTAG, debugWire and ISP mode are supported, provided
 it has a firmware revision of at least 4.14 (decimal).
 See below for the limitations of debugWire.
-For ATxmega devices, the JTAG ICE mkII is supported in PDI mode, provided it
+For ATxmega devices, the JTAG ICE mkII/3 is supported in PDI mode, provided it
 has a revision 1 hardware and firmware version of at least 5.37 (decimal).
 
+Atmel's XplainedPro boards, using EDBG protocol (CMSIS-DAP compliant), are
+supported by teh ``jtag3'' programmer type.
+
 The AVR Dragon is supported in all modes (ISP, JTAG, PDI, HVSP, PP, debugWire).
 When used in JTAG and debugWire mode, the AVR Dragon behaves similar to a
 JTAG ICE mkII, so all device-specific comments for that device
@@ -743,10 +746,10 @@ accepting extended parameters.
 
 @table @code
 
-@item JTAG ICE mkII
+@item JTAG ICE mkII/3
 @itemx AVR Dragon
 
-When using the JTAG ICE mkII or AVR Dragon in JTAG mode, the
+When using the JTAG ICE mkII/3 or AVR Dragon in JTAG mode, the
 following extended parameter is accepted:
 @table @code
 @item @samp{jtagchain=UB,UA,BB,BA}
@@ -1188,7 +1191,7 @@ Set the JTAG ICE bit clock period to @var{period} microseconds.
 Note that unlike STK500 settings, this setting will be reverted to
 its default value (approximately 1 microsecond) when the programming
 software signs off from the JTAG ICE.
-This parameter can also be used on the JTAG ICE mkII to specify the
+This parameter can also be used on the JTAG ICE mkII/3 to specify the
 ISP clock period when operating the ICE in ISP mode.
 
 @item parms
@@ -1392,7 +1395,7 @@ programmer
     pgmled   = <num> ;                          # pin number
     vfyled   = <num> ;                          # pin number
     usbvid   = <hexnum>;                        # USB VID (Vendor ID)
-    usbpid   = <hexnum>;                        # USB PID (Product ID)
+    usbpid   = <hexnum> [, <hexnum> ...];       # USB PID (Product ID)
     usbdev   = <interface>;                     # USB interface or other device info 
     usbvendor = <vendorname>;                   # USB Vendor Name
     usbproduct = <productname>;                 # USB Product Name
@@ -1407,6 +1410,9 @@ programmer. These values can be changed by new setting them for the new programm
 @noindent
 To invert a bit in the pin definitions, use @code{= ~ <num>}.
 
+@noindent
+Not all programmer types can handle a list of USB PIDs.
+
 @noindent
 Following programmer types are currently implemented: