diff --git a/ChangeLog b/ChangeLog
index d54ae3d3..254ce0b0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-02-27  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
+
+	Submitted by Ed Okerson:
+	* jtagmkII.c (jtagmkII_read_byte): Fix signature reading of
+	Xmega.
+
 2009-02-26  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
 
 	Submitted by Mikael Hermansson:
diff --git a/jtagmkII.c b/jtagmkII.c
index 15160af1..b8d03f3a 100644
--- a/jtagmkII.c
+++ b/jtagmkII.c
@@ -1816,6 +1816,11 @@ static int jtagmkII_read_byte(PROGRAMMER * pgm, AVRPART * p, AVRMEM * mem,
       }
       return 0;
     }
+    else if (mem->offset != 0) {
+      cmd[1] = MTYPE_SRAM;
+      addr += mem->offset;
+    }
+
   }
 
   /*