diff --git a/avrdude/ChangeLog b/avrdude/ChangeLog
index 7c4895cc..a4b6e437 100644
--- a/avrdude/ChangeLog
+++ b/avrdude/ChangeLog
@@ -1,3 +1,7 @@
+2004-07-05  Jan-Hinnerk Reichert  <hinni@despammed.com>
+	* *.c, *.h: Removed unnecessary includes of
+        config.h
+
 2004-07-04  Jan-Hinnerk Reichert  <hinni@despammed.com>
 	* avr.h: Removed some unused prototypes
 
diff --git a/avrdude/avr.c b/avrdude/avr.c
index 87238814..5960b290 100644
--- a/avrdude/avr.c
+++ b/avrdude/avr.c
@@ -30,7 +30,6 @@
 
 
 #include "avr.h"
-#include "config.h"
 #include "lists.h"
 #include "pindefs.h"
 #include "ppi.h"
diff --git a/avrdude/avr910.h b/avrdude/avr910.h
index 9ae392e1..e46c4dd3 100644
--- a/avrdude/avr910.h
+++ b/avrdude/avr910.h
@@ -22,7 +22,7 @@
 #ifndef __avr910_h__
 #define __avr910_h__
 
-#include "config.h"
+#include "avrpart.h"
 
 void avr910_initpgm (PROGRAMMER * pgm);
 
diff --git a/avrdude/avrpart.h b/avrdude/avrpart.h
index db640588..e0892a3c 100644
--- a/avrdude/avrpart.h
+++ b/avrdude/avrpart.h
@@ -26,6 +26,9 @@
 
 #include "lists.h"
 
+
+extern LISTID part_list;
+
 /*
  * AVR serial programming instructions
  */
diff --git a/avrdude/butterfly.h b/avrdude/butterfly.h
index ae7f6f42..9a77e5b3 100644
--- a/avrdude/butterfly.h
+++ b/avrdude/butterfly.h
@@ -22,8 +22,6 @@
 #ifndef __butterfly_h__
 #define __butterfly_h__
 
-#include "config.h"
-
 void butterfly_initpgm (PROGRAMMER * pgm);
 
 #endif /* __butterfly_h__ */
diff --git a/avrdude/config.h b/avrdude/config.h
index 627a3c2c..39f21760 100644
--- a/avrdude/config.h
+++ b/avrdude/config.h
@@ -47,8 +47,6 @@ extern FILE       * yyin;
 extern PROGRAMMER * current_prog;
 extern AVRPART    * current_part;
 extern AVRMEM     * current_mem;
-extern LISTID       programmers;
-extern LISTID       part_list;
 extern int          lineno;
 extern char       * infile;
 extern LISTID       string_list;
diff --git a/avrdude/main.c b/avrdude/main.c
index a0d435f3..5ab23cc7 100644
--- a/avrdude/main.c
+++ b/avrdude/main.c
@@ -50,7 +50,6 @@
 #include "lists.h"
 #include "par.h"
 #include "pindefs.h"
-#include "ppi.h"
 #include "term.h"
 
 
@@ -134,7 +133,7 @@ int getexitspecs(char *s, int *set, int *clr)
     else if (strcmp(cp, "noreset") == 0) {
       *set |= par_getpinmask(pgm->pinno[PIN_AVR_RESET]);
     }
-    else if (strcmp(cp, "vcc") == 0) { 
+    else if (strcmp(cp, "vcc") == 0) {
       if (pgm->pinno[PPI_AVR_VCC])
         *set |= pgm->pinno[PPI_AVR_VCC];
     }
@@ -507,7 +506,7 @@ UPDATE * new_update(int op, char * memtype, int filefmt, char * filename)
 
 
 
-int do_op(PROGRAMMER * pgm, struct avrpart * p, UPDATE * upd, int nowrite, 
+int do_op(PROGRAMMER * pgm, struct avrpart * p, UPDATE * upd, int nowrite,
           int verify)
 {
   struct avrpart * v;
diff --git a/avrdude/par.h b/avrdude/par.h
index dece58a1..54946337 100644
--- a/avrdude/par.h
+++ b/avrdude/par.h
@@ -22,8 +22,6 @@
 #ifndef __par_h__
 #define __par_h__
 
-#include "config.h"
-
 void par_initpgm        (PROGRAMMER * pgm);
 
 int par_getpinmask(int pin);
diff --git a/avrdude/pgm.h b/avrdude/pgm.h
index 2654b304..bb066c7c 100644
--- a/avrdude/pgm.h
+++ b/avrdude/pgm.h
@@ -35,6 +35,9 @@
 #define PGM_DESCLEN 80
 #define PGM_PORTLEN PATH_MAX
 #define PGM_TYPELEN 32
+
+extern LISTID       programmers;
+
 typedef struct programmer_t {
   LISTID id;
   char desc[PGM_DESCLEN];
diff --git a/avrdude/ppi.h b/avrdude/ppi.h
index 7f817f9e..69f1f378 100644
--- a/avrdude/ppi.h
+++ b/avrdude/ppi.h
@@ -22,8 +22,6 @@
 #ifndef __ppi_h__
 #define __ppi_h__
 
-#include "config.h"
-
 /*
  * PPI registers
  */
diff --git a/avrdude/serial.h b/avrdude/serial.h
index c84c45df..0846e4cd 100644
--- a/avrdude/serial.h
+++ b/avrdude/serial.h
@@ -30,8 +30,6 @@
 #ifndef __serial_h__
 #define __serial_h__
 
-#include "config.h"
-
 extern int serial_open(char * port, long baud);
 extern void serial_close(int fd);
 
diff --git a/avrdude/stk500.h b/avrdude/stk500.h
index 222fe666..1f4fe2eb 100644
--- a/avrdude/stk500.h
+++ b/avrdude/stk500.h
@@ -22,8 +22,6 @@
 #ifndef __stk500_h__
 #define __stk500_h__
 
-#include "config.h"
-
 void stk500_initpgm (PROGRAMMER * pgm);
 
 #endif