diff --git a/ChangeLog b/ChangeLog
index e2b37dc0..298beed1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2010-01-11  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
+
+	* main.c (main): disable safemode for Xmega parts.
+
 2010-01-12  Michal Ludvig  <mludvig@logix.net.nz>
 
 	* buspirate.c: If the BusPirate doesn't respond
diff --git a/main.c b/main.c
index 535ab1b5..f9ee0aaa 100644
--- a/main.c
+++ b/main.c
@@ -728,6 +728,10 @@ int main(int argc, char * argv [])
     auto_erase = 0;
   }
 
+  if(p->flags & AVRPART_HAS_PDI) {
+    safemode = 0;
+  }
+
   /*
    * set up seperate instances of the avr part, one for use in
    * programming, one for use in verifying.  These are separate