Browse Source

[MTD] [NAND] rename at91_nand -> atmel_nand: file names and Kconfig

The AT91 NAND driver needs just a few tiny modifications to work on
AVR32 as well. Rename it atmel_nand to reflect this.

Also move the ECC register definitions into drivers/mtd/nand since they
are only useful to the atmel_nand driver, and get rid of the useless
filename at the top of each file.

Signed-off-by: Håvard Skinnemoen <haavard.skinnemoen@atmel.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Håvard Skinnemoen 17 years ago
parent
commit
d4f4c0aa8e

+ 9 - 8
drivers/mtd/nand/Kconfig

@@ -271,7 +271,7 @@ config MTD_NAND_CS553X
 
 
 	  If you say "m", the module will be called "cs553x_nand.ko".
 	  If you say "m", the module will be called "cs553x_nand.ko".
 
 
-config MTD_NAND_AT91
+config MTD_NAND_ATMEL
 	bool "Support for NAND Flash / SmartMedia on AT91"
 	bool "Support for NAND Flash / SmartMedia on AT91"
 	depends on ARCH_AT91
 	depends on ARCH_AT91
 	help
 	help
@@ -279,14 +279,15 @@ config MTD_NAND_AT91
 	  on Atmel AT91 processors.
 	  on Atmel AT91 processors.
 choice
 choice
 	prompt "ECC management for NAND Flash / SmartMedia on AT91"
 	prompt "ECC management for NAND Flash / SmartMedia on AT91"
-	depends on MTD_NAND_AT91
+	depends on MTD_NAND_ATMEL
 
 
-config MTD_NAND_AT91_ECC_HW
+config MTD_NAND_ATMEL_ECC_HW
 	bool "Hardware ECC"
 	bool "Hardware ECC"
 	depends on ARCH_AT91SAM9263 || ARCH_AT91SAM9260
 	depends on ARCH_AT91SAM9263 || ARCH_AT91SAM9260
 	help
 	help
-	  Uses hardware ECC provided by the at91sam9260/at91sam9263 chip
-	  instead of software ECC.
+	  Use hardware ECC instead of software ECC when the chip
+	  supports it.
+
 	  The hardware ECC controller is capable of single bit error
 	  The hardware ECC controller is capable of single bit error
 	  correction and 2-bit random detection per page.
 	  correction and 2-bit random detection per page.
 
 
@@ -296,16 +297,16 @@ config MTD_NAND_AT91_ECC_HW
 
 
 	  If unsure, say Y
 	  If unsure, say Y
 
 
-config MTD_NAND_AT91_ECC_SOFT
+config MTD_NAND_ATMEL_ECC_SOFT
 	bool "Software ECC"
 	bool "Software ECC"
 	help
 	help
-	  Uses software ECC.
+	  Use software ECC.
 
 
 	  NB : hardware and software ECC schemes are incompatible.
 	  NB : hardware and software ECC schemes are incompatible.
 	  If you switch from one to another, you'll have to erase your
 	  If you switch from one to another, you'll have to erase your
 	  mtd partition.
 	  mtd partition.
 
 
-config MTD_NAND_AT91_ECC_NONE
+config MTD_NAND_ATMEL_ECC_NONE
 	bool "No ECC (testing only, DANGEROUS)"
 	bool "No ECC (testing only, DANGEROUS)"
 	depends on DEBUG_KERNEL
 	depends on DEBUG_KERNEL
 	help
 	help

+ 1 - 1
drivers/mtd/nand/Makefile

@@ -23,7 +23,7 @@ obj-$(CONFIG_MTD_NAND_TS7250)		+= ts7250.o
 obj-$(CONFIG_MTD_NAND_NANDSIM)		+= nandsim.o
 obj-$(CONFIG_MTD_NAND_NANDSIM)		+= nandsim.o
 obj-$(CONFIG_MTD_NAND_CS553X)		+= cs553x_nand.o
 obj-$(CONFIG_MTD_NAND_CS553X)		+= cs553x_nand.o
 obj-$(CONFIG_MTD_NAND_NDFC)		+= ndfc.o
 obj-$(CONFIG_MTD_NAND_NDFC)		+= ndfc.o
-obj-$(CONFIG_MTD_NAND_AT91)		+= at91_nand.o
+obj-$(CONFIG_MTD_NAND_ATMEL)		+= atmel_nand.o
 obj-$(CONFIG_MTD_NAND_CM_X270)		+= cmx270_nand.o
 obj-$(CONFIG_MTD_NAND_CM_X270)		+= cmx270_nand.o
 obj-$(CONFIG_MTD_NAND_BASLER_EXCITE)	+= excite_nandflash.o
 obj-$(CONFIG_MTD_NAND_BASLER_EXCITE)	+= excite_nandflash.o
 obj-$(CONFIG_MTD_NAND_PXA3xx)		+= pxa3xx_nand.o
 obj-$(CONFIG_MTD_NAND_PXA3xx)		+= pxa3xx_nand.o

+ 4 - 6
drivers/mtd/nand/at91_nand.c → drivers/mtd/nand/atmel_nand.c

@@ -1,6 +1,4 @@
 /*
 /*
- * drivers/mtd/nand/at91_nand.c
- *
  *  Copyright (C) 2003 Rick Bronson
  *  Copyright (C) 2003 Rick Bronson
  *
  *
  *  Derived from drivers/mtd/nand/autcpu12.c
  *  Derived from drivers/mtd/nand/autcpu12.c
@@ -36,13 +34,13 @@
 
 
 #include <asm/arch/board.h>
 #include <asm/arch/board.h>
 
 
-#ifdef CONFIG_MTD_NAND_AT91_ECC_HW
+#ifdef CONFIG_MTD_NAND_ATMEL_ECC_HW
 #define hard_ecc	1
 #define hard_ecc	1
 #else
 #else
 #define hard_ecc	0
 #define hard_ecc	0
 #endif
 #endif
 
 
-#ifdef CONFIG_MTD_NAND_AT91_ECC_NONE
+#ifdef CONFIG_MTD_NAND_ATMEL_ECC_NONE
 #define no_ecc		1
 #define no_ecc		1
 #else
 #else
 #define no_ecc		0
 #define no_ecc		0
@@ -54,7 +52,7 @@
 #define ecc_writel(add, reg, value)			\
 #define ecc_writel(add, reg, value)			\
 	__raw_writel((value), add + AT91_ECC_##reg)
 	__raw_writel((value), add + AT91_ECC_##reg)
 
 
-#include <asm/arch/at91_ecc.h> /* AT91SAM9260/3 ECC registers */
+#include "atmel_nand_ecc.h"	/* Hardware ECC registers */
 
 
 /* oob layout for large page size
 /* oob layout for large page size
  * bad block info is on bytes 0 and 1
  * bad block info is on bytes 0 and 1
@@ -588,5 +586,5 @@ module_exit(at91_nand_exit);
 
 
 MODULE_LICENSE("GPL");
 MODULE_LICENSE("GPL");
 MODULE_AUTHOR("Rick Bronson");
 MODULE_AUTHOR("Rick Bronson");
-MODULE_DESCRIPTION("NAND/SmartMedia driver for AT91RM9200 / AT91SAM9");
+MODULE_DESCRIPTION("NAND/SmartMedia driver for AT91 / AVR32");
 MODULE_ALIAS("platform:at91_nand");
 MODULE_ALIAS("platform:at91_nand");

+ 2 - 4
include/asm-arm/arch-at91/at91_ecc.h → drivers/mtd/nand/atmel_nand_ecc.h

@@ -1,6 +1,4 @@
 /*
 /*
- * include/asm-arm/arch-at91/at91_ecc.h
- *
  * Error Corrected Code Controller (ECC) - System peripherals regsters.
  * Error Corrected Code Controller (ECC) - System peripherals regsters.
  * Based on AT91SAM9260 datasheet revision B.
  * Based on AT91SAM9260 datasheet revision B.
  *
  *
@@ -10,8 +8,8 @@
  * option) any later version.
  * option) any later version.
  */
  */
 
 
-#ifndef AT91_ECC_H
-#define AT91_ECC_H
+#ifndef ATMEL_NAND_ECC_H
+#define ATMEL_NAND_ECC_H
 
 
 #define AT91_ECC_CR		0x00			/* Control register */
 #define AT91_ECC_CR		0x00			/* Control register */
 #define		AT91_ECC_RST		(1 << 0)		/* Reset parity */
 #define		AT91_ECC_RST		(1 << 0)		/* Reset parity */