From a851c91afe0a62b0ecbdbe4a198667af27b310ff Mon Sep 17 00:00:00 2001
From: Joerg Wunsch <j@uriah.heep.sax.de>
Date: Fri, 13 Sep 2013 15:42:38 +0000
Subject: [PATCH] Submitted by HubertB: patch #7657 Add ATmega406 support for
 avrdude using DRAGON + JTAG * avrdude.conf.in (ATmega406): New entry.

git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk@1225 81a1dc3b-b13d-400b-aceb-764788c761c2
---
 avrdude/ChangeLog       |  6 ++++
 avrdude/NEWS            |  2 ++
 avrdude/avrdude.conf.in | 65 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 73 insertions(+)

diff --git a/avrdude/ChangeLog b/avrdude/ChangeLog
index 6f2c0d6a..bfbec161 100644
--- a/avrdude/ChangeLog
+++ b/avrdude/ChangeLog
@@ -1,3 +1,9 @@
+2013-09-13  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
+
+	Submitted by HubertB:
+	patch #7657 Add ATmega406 support for avrdude using DRAGON + JTAG
+	* avrdude.conf.in (ATmega406): New entry.
+
 2013-09-13  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
 
 	Submitted by Marc de Hoop:
diff --git a/avrdude/NEWS b/avrdude/NEWS
index 5a8e0705..1cfd6389 100644
--- a/avrdude/NEWS
+++ b/avrdude/NEWS
@@ -22,6 +22,7 @@ Current:
       ATxmega64A1U, ATxmega64A3U, ATxmega64A4U, ATxmega64B1,
       ATxmega64B3, ATxmega64C3, ATxmega64D3
     - ATtiny43U
+    - ATmega406
 
 
   * New programmers supported:
@@ -108,6 +109,7 @@ Current:
       - bug #35456: The progress bar for STK500V2 programmer is "wrong".
       - patch #5708 avrdude should make 10 synchronization attempts instead of just one
       - patch #7606 ATtiny43u support
+      - patch #7657 Add ATmega406 support for avrdude using DRAGON + JTAG
 
   * Keep track of input file contents
 
diff --git a/avrdude/avrdude.conf.in b/avrdude/avrdude.conf.in
index c71fe7ae..e4fc7986 100644
--- a/avrdude/avrdude.conf.in
+++ b/avrdude/avrdude.conf.in
@@ -14177,4 +14177,69 @@ part
     ;
 ;
 
+#------------------------------------------------------------
+# ATmega406
+#------------------------------------------------------------
+
+part
+    id				= "m406";
+    desc			= "ATMEGA406";
+    has_jtag			= yes;
+    signature			= 0x1e 0x95 0x07;
+
+    # STK500 parameters (parallel programming IO lines)
+    pagel			= 0xa7;
+    bs2				= 0xa0;
+    serial			= no;
+    parallel			= yes;
+
+    # STK500v2 HV programming parameters, from XML
+    pp_controlstack		= 0x0e, 0x1e, 0x0f, 0x1f, 0x2e, 0x3e, 0x2f, 0x3f,
+				  0x4e, 0x5e, 0x4f, 0x5f, 0x6e, 0x7e, 0x6f, 0x7f,
+				  0x66, 0x76, 0x67, 0x77, 0x6a, 0x7a, 0x6b, 0x7b,
+				  0xbe, 0xfd, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00;
+
+    # JTAG ICE mkII parameters, also from XML files
+    allowfullpagebitstream	= no;
+    enablepageprogramming	= yes;
+    idr				= 0x51;
+    rampz			= 0x00;
+    spmcr			= 0x57;
+    eecr			= 0x3f;
+
+    memory "eeprom"
+        paged		= no;
+        size		= 512;
+        page_size	= 4;
+        blocksize	= 4;
+	readsize	= 4;
+        num_pages	= 128;
+    ;
+
+    memory "flash"
+        paged		= yes;
+        size		= 40960;
+        page_size	= 128;
+        blocksize	= 128;
+	readsize	= 128;
+        num_pages	= 320;
+    ;
+
+    memory "hfuse"
+        size            = 1;
+    ;
+
+    memory "lfuse"
+        size            = 1;
+    ;
+
+    memory "lockbits"
+        size		= 1;
+    ;
+
+    memory "signature"
+        size            = 3;
+    ;
+;
+