diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
index 2c16e05..dade02a 100644
--- a/drivers/mtd/mtdcore.c
+++ b/drivers/mtd/mtdcore.c
@@ -1,5 +1,5 @@
 /*
- * $Id: mtdcore.c,v 1.46 2005/08/11 17:13:43 gleixner Exp $
+ * $Id: mtdcore.c,v 1.47 2005/11/07 11:14:20 gleixner Exp $
  *
  * Core registration and callback routines for MTD
  * drivers and users.
@@ -25,7 +25,7 @@
 
 #include <linux/mtd/mtd.h>
 
-/* These are exported solely for the purpose of mtd_blkdevs.c. You 
+/* These are exported solely for the purpose of mtd_blkdevs.c. You
    should not use them for _anything_ else */
 DECLARE_MUTEX(mtd_table_mutex);
 struct mtd_info *mtd_table[MAX_MTD_DEVICES];
@@ -66,7 +66,7 @@
 				struct mtd_notifier *not = list_entry(this, struct mtd_notifier, list);
 				not->add(mtd);
 			}
-			
+
 			up(&mtd_table_mutex);
 			/* We _know_ we aren't being removed, because
 			   our caller is still holding us here. So none
@@ -75,7 +75,7 @@
 			__module_get(THIS_MODULE);
 			return 0;
 		}
-	
+
 	up(&mtd_table_mutex);
 	return 1;
 }
@@ -93,13 +93,13 @@
 int del_mtd_device (struct mtd_info *mtd)
 {
 	int ret;
-	
+
 	down(&mtd_table_mutex);
 
 	if (mtd_table[mtd->index] != mtd) {
 		ret = -ENODEV;
 	} else if (mtd->usecount) {
-		printk(KERN_NOTICE "Removing MTD device #%d (%s) with use count %d\n", 
+		printk(KERN_NOTICE "Removing MTD device #%d (%s) with use count %d\n",
 		       mtd->index, mtd->name, mtd->usecount);
 		ret = -EBUSY;
 	} else {
@@ -140,7 +140,7 @@
 	list_add(&new->list, &mtd_notifiers);
 
  	__module_get(THIS_MODULE);
-	
+
 	for (i=0; i< MAX_MTD_DEVICES; i++)
 		if (mtd_table[i])
 			new->add(mtd_table[i]);
@@ -169,7 +169,7 @@
 	for (i=0; i< MAX_MTD_DEVICES; i++)
 		if (mtd_table[i])
 			old->remove(mtd_table[i]);
-			
+
 	list_del(&old->list);
 	up(&mtd_table_mutex);
 	return 0;
@@ -187,7 +187,7 @@
  *	both, return the num'th driver only if its address matches. Return NULL
  *	if not.
  */
-	
+
 struct mtd_info *get_mtd_device(struct mtd_info *mtd, int num)
 {
 	struct mtd_info *ret = NULL;
