From aa211f75800d320548cc051c8f830886f4f09c7e Mon Sep 17 00:00:00 2001
From: MCUdude <hansibull@gmail.com>
Date: Sun, 19 Jun 2022 19:23:34 +0200
Subject: [PATCH 1/2] Add missing efuse write delay for ATmega169/A/P/PA and
 ATmega328P

---
 src/avrdude.conf.in | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in
index 362b6167..c0ba9c4b 100644
--- a/src/avrdude.conf.in
+++ b/src/avrdude.conf.in
@@ -5823,6 +5823,8 @@ part
 
     memory "efuse"
         size            = 1;
+        min_write_delay = 2000;
+        max_write_delay = 2000;
         write           = "1 0 1 0  1 1 0 0  1 0 1 0  0 1 0 0",
                           "x x x x  x x x x  x x x x  i i i i";
 
@@ -9852,6 +9854,8 @@ part parent "m328"
 
     memory "efuse"
         size = 1;
+        min_write_delay = 4500;
+        max_write_delay = 4500;
         read            = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
                           "x x x x x x x x o o o o o o o o";
         write           = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",

From 692c13ed98a80b0728f2a4e78c6b61fcf181fa3b Mon Sep 17 00:00:00 2001
From: MCUdude <hansibull@gmail.com>
Date: Sun, 19 Jun 2022 19:40:31 +0200
Subject: [PATCH 2/2] Add missing chip erase delay for ATmega48/88/168/328PB

---
 src/avrdude.conf.in | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/avrdude.conf.in b/src/avrdude.conf.in
index c0ba9c4b..bf2892aa 100644
--- a/src/avrdude.conf.in
+++ b/src/avrdude.conf.in
@@ -8215,6 +8215,7 @@ part parent "m48"
     id               = "m48pb";
     desc             = "ATmega48PB";
     signature        = 0x1e 0x92 0x10;
+    chip_erase_delay = 10500;
   ;
 
 #------------------------------------------------------------
@@ -8442,6 +8443,7 @@ part parent "m88"
     id               = "m88pb";
     desc             = "ATmega88PB";
     signature        = 0x1e 0x93 0x16;
+    chip_erase_delay = 10500;
   ;
 
 #------------------------------------------------------------
@@ -8671,6 +8673,7 @@ part parent "m168"
     id              = "m168pb";
     desc            = "ATmega168PB";
     signature       = 0x1e 0x94 0x15;
+    chip_erase_delay = 10500;
   ;
 
 #------------------------------------------------------------
@@ -9827,6 +9830,7 @@ part parent "m328"
     id              = "m328pb";
     desc            = "ATmega328PB";
     signature       = 0x1e 0x95 0x16;
+    chip_erase_delay = 10500;
 
     memory "efuse"
         size = 1;