From 8907155291a586863e4d42a92018642864ffa3da Mon Sep 17 00:00:00 2001
From: Joerg Wunsch <j@uriah.heep.sax.de>
Date: Sun, 7 Nov 2021 15:28:24 +0000
Subject: [PATCH] Fix entry for ATmega164P, by deriving it from ATmega324P

git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1458 81a1dc3b-b13d-400b-aceb-764788c761c2
---
 ChangeLog       |  5 +++++
 NEWS            |  1 +
 avrdude.conf.in | 20 ++++++++++----------
 3 files changed, 16 insertions(+), 10 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 14d45622..2e4c3764 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2021-11-07  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
+
+	bug #55009: no efuses for m164a/pa
+	* avrdude.conf.in (ATmega164P): derive from ATmega324P
+
 2021-11-07  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
 
 	Submitted by evan Venn:
diff --git a/NEWS b/NEWS
index 047bcc40..98afae8c 100644
--- a/NEWS
+++ b/NEWS
@@ -59,6 +59,7 @@ Current:
     bug #58078: [PATCH] buspirate: remove compound literals (fixes GCC>=9)
     bug #57453: [PATCH] fix reference to nonexistant -m option by changing to -U
     bug #59227: Add new part. How does one get a part added to the CONF file?
+    bug #55009: no efuses for m164a/pa
 
   * Patches:
     patch #9482: Add support for UPDI and AVR8X
diff --git a/avrdude.conf.in b/avrdude.conf.in
index 2322990b..80d61b5b 100644
--- a/avrdude.conf.in
+++ b/avrdude.conf.in
@@ -4419,22 +4419,22 @@ part
 # ATmega164P
 #------------------------------------------------------------
 
-# close to ATmega16
+# like ATmega324P, only smaller
 
-part parent "m16"
+part parent "m324p"
     id               = "m164p";
     desc             = "ATmega164P";
     signature        = 0x1e 0x94 0x0a;
 
-    progmodedelay       = 0;
-    latchcycles         = 5;
-    togglevtg           = 1;
-    poweroffdelay       = 15;
-    resetdelayms        = 1;
-    allowfullpagebitstream = no;
-    chip_erase_delay = 55000;
+    memory "eeprom"
+        size            = 512;
+        ;
 
-    ocdrev              = 3;
+    memory "flash"
+        paged           = yes;
+        size            = 16384;
+        num_pages       = 128;
+        ;
   ;