aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/chips/Kconfig2
-rw-r--r--drivers/mtd/chips/cfi_cmdset_0001.c4
-rw-r--r--drivers/mtd/chips/cfi_cmdset_0002.c10
-rw-r--r--drivers/mtd/chips/cfi_util.c2
-rw-r--r--drivers/mtd/chips/jedec_probe.c2
-rw-r--r--drivers/mtd/devices/block2mtd.c2
-rw-r--r--drivers/mtd/devices/doc2001plus.c2
-rw-r--r--drivers/mtd/devices/docecc.c4
-rw-r--r--drivers/mtd/devices/lart.c4
-rw-r--r--drivers/mtd/devices/pmc551.c4
-rw-r--r--drivers/mtd/lpddr/lpddr_cmds.c4
-rw-r--r--drivers/mtd/maps/ceiva.c4
-rw-r--r--drivers/mtd/maps/cfi_flagadm.c2
-rw-r--r--drivers/mtd/maps/pcmciamtd.c2
-rw-r--r--drivers/mtd/maps/pmcmsp-flash.c2
-rw-r--r--drivers/mtd/maps/sc520cdp.c2
-rw-r--r--drivers/mtd/maps/tqm8xxl.c2
-rw-r--r--drivers/mtd/mtdblock.c2
-rw-r--r--drivers/mtd/mtdchar.c2
-rw-r--r--drivers/mtd/mtdswap.c2
-rw-r--r--drivers/mtd/nand/Kconfig2
-rw-r--r--drivers/mtd/nand/ams-delta.c2
-rw-r--r--drivers/mtd/nand/atmel_nand.c32
-rw-r--r--drivers/mtd/nand/autcpu12.c2
-rw-r--r--drivers/mtd/nand/cs553x_nand.c2
-rw-r--r--drivers/mtd/nand/denali.c6
-rw-r--r--drivers/mtd/nand/diskonchip.c8
-rw-r--r--drivers/mtd/nand/fsl_elbc_nand.c2
-rw-r--r--drivers/mtd/nand/fsmc_nand.c10
-rw-r--r--drivers/mtd/nand/nand_base.c2
-rw-r--r--drivers/mtd/nand/nand_bbt.c2
-rw-r--r--drivers/mtd/nand/nandsim.c2
-rw-r--r--drivers/mtd/nand/nomadik_nand.c2
-rw-r--r--drivers/mtd/nand/pasemi_nand.c2
-rw-r--r--drivers/mtd/nand/plat_nand.c2
-rw-r--r--drivers/mtd/nand/pxa3xx_nand.c2
-rw-r--r--drivers/mtd/nand/r852.c10
-rw-r--r--drivers/mtd/nand/sh_flctl.c2
-rw-r--r--drivers/mtd/nand/sm_common.c2
-rw-r--r--drivers/mtd/nand/tmio_nand.c2
-rw-r--r--drivers/mtd/onenand/omap2.c4
-rw-r--r--drivers/mtd/onenand/onenand_sim.c4
-rw-r--r--drivers/mtd/sm_ftl.c4
-rw-r--r--drivers/mtd/ubi/Kconfig2
-rw-r--r--drivers/mtd/ubi/io.c8
-rw-r--r--drivers/mtd/ubi/scan.c2
-rw-r--r--drivers/mtd/ubi/vmt.c5
47 files changed, 89 insertions, 96 deletions
diff --git a/drivers/mtd/chips/Kconfig b/drivers/mtd/chips/Kconfig
index 35c6a23b183b..b1e3c26edd6d 100644
--- a/drivers/mtd/chips/Kconfig
+++ b/drivers/mtd/chips/Kconfig
@@ -19,7 +19,7 @@ config MTD_JEDECPROBE
19 help 19 help
20 This option enables JEDEC-style probing of flash chips which are not 20 This option enables JEDEC-style probing of flash chips which are not
21 compatible with the Common Flash Interface, but will use the common 21 compatible with the Common Flash Interface, but will use the common
22 CFI-targetted flash drivers for any chips which are identified which 22 CFI-targeted flash drivers for any chips which are identified which
23 are in fact compatible in all but the probe method. This actually 23 are in fact compatible in all but the probe method. This actually
24 covers most AMD/Fujitsu-compatible chips and also non-CFI 24 covers most AMD/Fujitsu-compatible chips and also non-CFI
25 Intel chips. 25 Intel chips.
diff --git a/drivers/mtd/chips/cfi_cmdset_0001.c b/drivers/mtd/chips/cfi_cmdset_0001.c
index 092aef11120c..09cb7c8d93b4 100644
--- a/drivers/mtd/chips/cfi_cmdset_0001.c
+++ b/drivers/mtd/chips/cfi_cmdset_0001.c
@@ -1247,12 +1247,12 @@ static int inval_cache_and_wait_for_operation(
1247 break; 1247 break;
1248 1248
1249 if (chip->erase_suspended && chip_state == FL_ERASING) { 1249 if (chip->erase_suspended && chip_state == FL_ERASING) {
1250 /* Erase suspend occured while sleep: reset timeout */ 1250 /* Erase suspend occurred while sleep: reset timeout */
1251 timeo = reset_timeo; 1251 timeo = reset_timeo;
1252 chip->erase_suspended = 0; 1252 chip->erase_suspended = 0;
1253 } 1253 }
1254 if (chip->write_suspended && chip_state == FL_WRITING) { 1254 if (chip->write_suspended && chip_state == FL_WRITING) {
1255 /* Write suspend occured while sleep: reset timeout */ 1255 /* Write suspend occurred while sleep: reset timeout */
1256 timeo = reset_timeo; 1256 timeo = reset_timeo;
1257 chip->write_suspended = 0; 1257 chip->write_suspended = 0;
1258 } 1258 }
diff --git a/drivers/mtd/chips/cfi_cmdset_0002.c b/drivers/mtd/chips/cfi_cmdset_0002.c
index f9a5331e9445..0b49266840b9 100644
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
@@ -263,7 +263,7 @@ static void fixup_old_sst_eraseregion(struct mtd_info *mtd)
263 struct cfi_private *cfi = map->fldrv_priv; 263 struct cfi_private *cfi = map->fldrv_priv;
264 264
265 /* 265 /*
266 * These flashes report two seperate eraseblock regions based on the 266 * These flashes report two separate eraseblock regions based on the
267 * sector_erase-size and block_erase-size, although they both operate on the 267 * sector_erase-size and block_erase-size, although they both operate on the
268 * same memory. This is not allowed according to CFI, so we just pick the 268 * same memory. This is not allowed according to CFI, so we just pick the
269 * sector_erase-size. 269 * sector_erase-size.
@@ -611,8 +611,8 @@ static struct mtd_info *cfi_amdstd_setup(struct mtd_info *mtd)
611 * 611 *
612 * Note that anything more complicated than checking if no bits are toggling 612 * Note that anything more complicated than checking if no bits are toggling
613 * (including checking DQ5 for an error status) is tricky to get working 613 * (including checking DQ5 for an error status) is tricky to get working
614 * correctly and is therefore not done (particulary with interleaved chips 614 * correctly and is therefore not done (particularly with interleaved chips
615 * as each chip must be checked independantly of the others). 615 * as each chip must be checked independently of the others).
616 */ 616 */
617static int __xipram chip_ready(struct map_info *map, unsigned long addr) 617static int __xipram chip_ready(struct map_info *map, unsigned long addr)
618{ 618{
@@ -635,8 +635,8 @@ static int __xipram chip_ready(struct map_info *map, unsigned long addr)
635 * 635 *
636 * Note that anything more complicated than checking if no bits are toggling 636 * Note that anything more complicated than checking if no bits are toggling
637 * (including checking DQ5 for an error status) is tricky to get working 637 * (including checking DQ5 for an error status) is tricky to get working
638 * correctly and is therefore not done (particulary with interleaved chips 638 * correctly and is therefore not done (particularly with interleaved chips
639 * as each chip must be checked independantly of the others). 639 * as each chip must be checked independently of the others).
640 * 640 *
641 */ 641 */
642static int __xipram chip_good(struct map_info *map, unsigned long addr, map_word expected) 642static int __xipram chip_good(struct map_info *map, unsigned long addr, map_word expected)
diff --git a/drivers/mtd/chips/cfi_util.c b/drivers/mtd/chips/cfi_util.c
index 6ae3d111e1e7..8e464054a631 100644
--- a/drivers/mtd/chips/cfi_util.c
+++ b/drivers/mtd/chips/cfi_util.c
@@ -1,6 +1,6 @@
1/* 1/*
2 * Common Flash Interface support: 2 * Common Flash Interface support:
3 * Generic utility functions not dependant on command set 3 * Generic utility functions not dependent on command set
4 * 4 *
5 * Copyright (C) 2002 Red Hat 5 * Copyright (C) 2002 Red Hat
6 * Copyright (C) 2003 STMicroelectronics Limited 6 * Copyright (C) 2003 STMicroelectronics Limited
diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c
index 4e1be51cc122..ea832ea0e4aa 100644
--- a/drivers/mtd/chips/jedec_probe.c
+++ b/drivers/mtd/chips/jedec_probe.c
@@ -2075,7 +2075,7 @@ static inline int jedec_match( uint32_t base,
2075 } 2075 }
2076 2076
2077 /* 2077 /*
2078 * Make sure the ID's dissappear when the device is taken out of 2078 * Make sure the ID's disappear when the device is taken out of
2079 * ID mode. The only time this should fail when it should succeed 2079 * ID mode. The only time this should fail when it should succeed
2080 * is when the ID's are written as data to the same 2080 * is when the ID's are written as data to the same
2081 * addresses. For this rare and unfortunate case the chip 2081 * addresses. For this rare and unfortunate case the chip
diff --git a/drivers/mtd/devices/block2mtd.c b/drivers/mtd/devices/block2mtd.c
index f29a6f9df6e7..97183c8c9e33 100644
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
@@ -295,7 +295,7 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size)
295 dev->mtd.owner = THIS_MODULE; 295 dev->mtd.owner = THIS_MODULE;
296 296
297 if (add_mtd_device(&dev->mtd)) { 297 if (add_mtd_device(&dev->mtd)) {
298 /* Device didnt get added, so free the entry */ 298 /* Device didn't get added, so free the entry */
299 goto devinit_err; 299 goto devinit_err;
300 } 300 }
301 list_add(&dev->list, &blkmtd_device_list); 301 list_add(&dev->list, &blkmtd_device_list);
diff --git a/drivers/mtd/devices/doc2001plus.c b/drivers/mtd/devices/doc2001plus.c
index 719b2915dc3a..8b36fa77a195 100644
--- a/drivers/mtd/devices/doc2001plus.c
+++ b/drivers/mtd/devices/doc2001plus.c
@@ -90,7 +90,7 @@ static inline int DoC_WaitReady(void __iomem * docptr)
90 return ret; 90 return ret;
91} 91}
92 92
93/* For some reason the Millennium Plus seems to occassionally put itself 93/* For some reason the Millennium Plus seems to occasionally put itself
94 * into reset mode. For me this happens randomly, with no pattern that I 94 * into reset mode. For me this happens randomly, with no pattern that I
95 * can detect. M-systems suggest always check this on any block level 95 * can detect. M-systems suggest always check this on any block level
96 * operation and setting to normal mode if in reset mode. 96 * operation and setting to normal mode if in reset mode.
diff --git a/drivers/mtd/devices/docecc.c b/drivers/mtd/devices/docecc.c
index a99838bb2dc0..37ef29a73ee4 100644
--- a/drivers/mtd/devices/docecc.c
+++ b/drivers/mtd/devices/docecc.c
@@ -109,7 +109,7 @@ for(ci=(n)-1;ci >=0;ci--)\
109 of the integer "alpha_to[i]" with a(0) being the LSB and a(m-1) the MSB. Thus for 109 of the integer "alpha_to[i]" with a(0) being the LSB and a(m-1) the MSB. Thus for
110 example the polynomial representation of @^5 would be given by the binary 110 example the polynomial representation of @^5 would be given by the binary
111 representation of the integer "alpha_to[5]". 111 representation of the integer "alpha_to[5]".
112 Similarily, index_of[] can be used as follows: 112 Similarly, index_of[] can be used as follows:
113 As above, let @ represent the primitive element of GF(2^m) that is 113 As above, let @ represent the primitive element of GF(2^m) that is
114 the root of the primitive polynomial p(x). In order to find the power 114 the root of the primitive polynomial p(x). In order to find the power
115 of @ (alpha) that has the polynomial representation 115 of @ (alpha) that has the polynomial representation
@@ -121,7 +121,7 @@ for(ci=(n)-1;ci >=0;ci--)\
121 NOTE: 121 NOTE:
122 The element alpha_to[2^m-1] = 0 always signifying that the 122 The element alpha_to[2^m-1] = 0 always signifying that the
123 representation of "@^infinity" = 0 is (0,0,0,...,0). 123 representation of "@^infinity" = 0 is (0,0,0,...,0).
124 Similarily, the element index_of[0] = A0 always signifying 124 Similarly, the element index_of[0] = A0 always signifying
125 that the power of alpha which has the polynomial representation 125 that the power of alpha which has the polynomial representation
126 (0,0,...,0) is "infinity". 126 (0,0,...,0) is "infinity".
127 127
diff --git a/drivers/mtd/devices/lart.c b/drivers/mtd/devices/lart.c
index caf604167f03..4b829f97d56c 100644
--- a/drivers/mtd/devices/lart.c
+++ b/drivers/mtd/devices/lart.c
@@ -353,7 +353,7 @@ static inline int erase_block (__u32 offset)
353 /* put the flash back into command mode */ 353 /* put the flash back into command mode */
354 write32 (DATA_TO_FLASH (READ_ARRAY),offset); 354 write32 (DATA_TO_FLASH (READ_ARRAY),offset);
355 355
356 /* was the erase successfull? */ 356 /* was the erase successful? */
357 if ((status & STATUS_ERASE_ERR)) 357 if ((status & STATUS_ERASE_ERR))
358 { 358 {
359 printk (KERN_WARNING "%s: erase error at address 0x%.8x.\n",module_name,offset); 359 printk (KERN_WARNING "%s: erase error at address 0x%.8x.\n",module_name,offset);
@@ -508,7 +508,7 @@ static inline int write_dword (__u32 offset,__u32 x)
508 /* put the flash back into command mode */ 508 /* put the flash back into command mode */
509 write32 (DATA_TO_FLASH (READ_ARRAY),offset); 509 write32 (DATA_TO_FLASH (READ_ARRAY),offset);
510 510
511 /* was the write successfull? */ 511 /* was the write successful? */
512 if ((status & STATUS_PGM_ERR) || read32 (offset) != x) 512 if ((status & STATUS_PGM_ERR) || read32 (offset) != x)
513 { 513 {
514 printk (KERN_WARNING "%s: write error at address 0x%.8x.\n",module_name,offset); 514 printk (KERN_WARNING "%s: write error at address 0x%.8x.\n",module_name,offset);
diff --git a/drivers/mtd/devices/pmc551.c b/drivers/mtd/devices/pmc551.c
index ef0aba0ce58f..41b8cdcc64cb 100644
--- a/drivers/mtd/devices/pmc551.c
+++ b/drivers/mtd/devices/pmc551.c
@@ -351,7 +351,7 @@ static int pmc551_write(struct mtd_info *mtd, loff_t to, size_t len,
351 * Fixup routines for the V370PDC 351 * Fixup routines for the V370PDC
352 * PCI device ID 0x020011b0 352 * PCI device ID 0x020011b0
353 * 353 *
354 * This function basicly kick starts the DRAM oboard the card and gets it 354 * This function basically kick starts the DRAM oboard the card and gets it
355 * ready to be used. Before this is done the device reads VERY erratic, so 355 * ready to be used. Before this is done the device reads VERY erratic, so
356 * much that it can crash the Linux 2.2.x series kernels when a user cat's 356 * much that it can crash the Linux 2.2.x series kernels when a user cat's
357 * /proc/pci .. though that is mainly a kernel bug in handling the PCI DEVSEL 357 * /proc/pci .. though that is mainly a kernel bug in handling the PCI DEVSEL
@@ -540,7 +540,7 @@ static u32 fixup_pmc551(struct pci_dev *dev)
540 540
541 /* 541 /*
542 * Check to make certain the DEVSEL is set correctly, this device 542 * Check to make certain the DEVSEL is set correctly, this device
543 * has a tendancy to assert DEVSEL and TRDY when a write is performed 543 * has a tendency to assert DEVSEL and TRDY when a write is performed
544 * to the memory when memory is read-only 544 * to the memory when memory is read-only
545 */ 545 */
546 if ((cmd & PCI_STATUS_DEVSEL_MASK) != 0x0) { 546 if ((cmd & PCI_STATUS_DEVSEL_MASK) != 0x0) {
diff --git a/drivers/mtd/lpddr/lpddr_cmds.c b/drivers/mtd/lpddr/lpddr_cmds.c
index 04fdfcca93f7..12679925b420 100644
--- a/drivers/mtd/lpddr/lpddr_cmds.c
+++ b/drivers/mtd/lpddr/lpddr_cmds.c
@@ -3,7 +3,7 @@
3 * erase, lock/unlock support for LPDDR flash memories 3 * erase, lock/unlock support for LPDDR flash memories
4 * (C) 2008 Korolev Alexey <akorolev@infradead.org> 4 * (C) 2008 Korolev Alexey <akorolev@infradead.org>
5 * (C) 2008 Vasiliy Leonenko <vasiliy.leonenko@gmail.com> 5 * (C) 2008 Vasiliy Leonenko <vasiliy.leonenko@gmail.com>
6 * Many thanks to Roman Borisov for intial enabling 6 * Many thanks to Roman Borisov for initial enabling
7 * 7 *
8 * This program is free software; you can redistribute it and/or 8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License 9 * modify it under the terms of the GNU General Public License
@@ -171,7 +171,7 @@ static int wait_for_ready(struct map_info *map, struct flchip *chip,
171 mutex_lock(&chip->mutex); 171 mutex_lock(&chip->mutex);
172 } 172 }
173 if (chip->erase_suspended || chip->write_suspended) { 173 if (chip->erase_suspended || chip->write_suspended) {
174 /* Suspend has occured while sleep: reset timeout */ 174 /* Suspend has occurred while sleep: reset timeout */
175 timeo = reset_timeo; 175 timeo = reset_timeo;
176 chip->erase_suspended = chip->write_suspended = 0; 176 chip->erase_suspended = chip->write_suspended = 0;
177 } 177 }
diff --git a/drivers/mtd/maps/ceiva.c b/drivers/mtd/maps/ceiva.c
index e5f645b775ad..23f551dc8ca8 100644
--- a/drivers/mtd/maps/ceiva.c
+++ b/drivers/mtd/maps/ceiva.c
@@ -42,7 +42,7 @@
42 * 42 *
43 * Please note: 43 * Please note:
44 * 1. The flash size given should be the largest flash size that can 44 * 1. The flash size given should be the largest flash size that can
45 * be accomodated. 45 * be accommodated.
46 * 46 *
47 * 2. The bus width must defined in clps_setup_flash. 47 * 2. The bus width must defined in clps_setup_flash.
48 * 48 *
@@ -58,7 +58,7 @@
58#define BOOT_PARTITION_SIZE_KiB (16) 58#define BOOT_PARTITION_SIZE_KiB (16)
59#define PARAMS_PARTITION_SIZE_KiB (8) 59#define PARAMS_PARTITION_SIZE_KiB (8)
60#define KERNEL_PARTITION_SIZE_KiB (4*128) 60#define KERNEL_PARTITION_SIZE_KiB (4*128)
61/* Use both remaing portion of first flash, and all of second flash */ 61/* Use both remaining portion of first flash, and all of second flash */
62#define ROOT_PARTITION_SIZE_KiB (3*128) + (8*128) 62#define ROOT_PARTITION_SIZE_KiB (3*128) + (8*128)
63 63
64static struct mtd_partition ceiva_partitions[] = { 64static struct mtd_partition ceiva_partitions[] = {
diff --git a/drivers/mtd/maps/cfi_flagadm.c b/drivers/mtd/maps/cfi_flagadm.c
index b4ed81611918..f71343cd77cc 100644
--- a/drivers/mtd/maps/cfi_flagadm.c
+++ b/drivers/mtd/maps/cfi_flagadm.c
@@ -33,7 +33,7 @@
33 33
34 34
35/* We split the flash chip up into four parts. 35/* We split the flash chip up into four parts.
36 * 1: bootloader firts 128k (0x00000000 - 0x0001FFFF) size 0x020000 36 * 1: bootloader first 128k (0x00000000 - 0x0001FFFF) size 0x020000
37 * 2: kernel 640k (0x00020000 - 0x000BFFFF) size 0x0A0000 37 * 2: kernel 640k (0x00020000 - 0x000BFFFF) size 0x0A0000
38 * 3: compressed 1536k root ramdisk (0x000C0000 - 0x0023FFFF) size 0x180000 38 * 3: compressed 1536k root ramdisk (0x000C0000 - 0x0023FFFF) size 0x180000
39 * 4: writeable diskpartition (jffs)(0x00240000 - 0x003FFFFF) size 0x1C0000 39 * 4: writeable diskpartition (jffs)(0x00240000 - 0x003FFFFF) size 0x1C0000
diff --git a/drivers/mtd/maps/pcmciamtd.c b/drivers/mtd/maps/pcmciamtd.c
index 917022948399..6799e75d74e0 100644
--- a/drivers/mtd/maps/pcmciamtd.c
+++ b/drivers/mtd/maps/pcmciamtd.c
@@ -497,7 +497,7 @@ static int pcmciamtd_config(struct pcmcia_device *link)
497 dev->pcmcia_map.set_vpp = pcmciamtd_set_vpp; 497 dev->pcmcia_map.set_vpp = pcmciamtd_set_vpp;
498 498
499 /* Request a memory window for PCMCIA. Some architeures can map windows 499 /* Request a memory window for PCMCIA. Some architeures can map windows
500 * upto the maximum that PCMCIA can support (64MiB) - this is ideal and 500 * up to the maximum that PCMCIA can support (64MiB) - this is ideal and
501 * we aim for a window the size of the whole card - otherwise we try 501 * we aim for a window the size of the whole card - otherwise we try
502 * smaller windows until we succeed 502 * smaller windows until we succeed
503 */ 503 */
diff --git a/drivers/mtd/maps/pmcmsp-flash.c b/drivers/mtd/maps/pmcmsp-flash.c
index acb13fa5001c..64aea6acd48e 100644
--- a/drivers/mtd/maps/pmcmsp-flash.c
+++ b/drivers/mtd/maps/pmcmsp-flash.c
@@ -3,7 +3,7 @@
3 * Config with both CFI and JEDEC device support. 3 * Config with both CFI and JEDEC device support.
4 * 4 *
5 * Basically physmap.c with the addition of partitions and 5 * Basically physmap.c with the addition of partitions and
6 * an array of mapping info to accomodate more than one flash type per board. 6 * an array of mapping info to accommodate more than one flash type per board.
7 * 7 *
8 * Copyright 2005-2007 PMC-Sierra, Inc. 8 * Copyright 2005-2007 PMC-Sierra, Inc.
9 * 9 *
diff --git a/drivers/mtd/maps/sc520cdp.c b/drivers/mtd/maps/sc520cdp.c
index 85c1e56309ec..4d8aaaf4bb76 100644
--- a/drivers/mtd/maps/sc520cdp.c
+++ b/drivers/mtd/maps/sc520cdp.c
@@ -197,7 +197,7 @@ static void sc520cdp_setup_par(void)
197 } 197 }
198 198
199 /* 199 /*
200 ** Find the PARxx registers that are reponsible for activating 200 ** Find the PARxx registers that are responsible for activating
201 ** ROMCS0, ROMCS1 and BOOTCS. Reprogram each of these with a 201 ** ROMCS0, ROMCS1 and BOOTCS. Reprogram each of these with a
202 ** new value from the table. 202 ** new value from the table.
203 */ 203 */
diff --git a/drivers/mtd/maps/tqm8xxl.c b/drivers/mtd/maps/tqm8xxl.c
index c08e140d40ed..0718dfb3ee64 100644
--- a/drivers/mtd/maps/tqm8xxl.c
+++ b/drivers/mtd/maps/tqm8xxl.c
@@ -63,7 +63,7 @@ static void __iomem *start_scan_addr;
63 */ 63 */
64 64
65#ifdef CONFIG_MTD_PARTITIONS 65#ifdef CONFIG_MTD_PARTITIONS
66/* Currently, TQM8xxL has upto 8MiB flash */ 66/* Currently, TQM8xxL has up to 8MiB flash */
67static unsigned long tqm8xxl_max_flash_size = 0x00800000; 67static unsigned long tqm8xxl_max_flash_size = 0x00800000;
68 68
69/* partition definition for first flash bank 69/* partition definition for first flash bank
diff --git a/drivers/mtd/mtdblock.c b/drivers/mtd/mtdblock.c
index 1e74ad961040..3326615ad66b 100644
--- a/drivers/mtd/mtdblock.c
+++ b/drivers/mtd/mtdblock.c
@@ -129,7 +129,7 @@ static int write_cached_data (struct mtdblk_dev *mtdblk)
129 return ret; 129 return ret;
130 130
131 /* 131 /*
132 * Here we could argubly set the cache state to STATE_CLEAN. 132 * Here we could arguably set the cache state to STATE_CLEAN.
133 * However this could lead to inconsistency since we will not 133 * However this could lead to inconsistency since we will not
134 * be notified if this content is altered on the flash by other 134 * be notified if this content is altered on the flash by other
135 * means. Let's declare it empty and leave buffering tasks to 135 * means. Let's declare it empty and leave buffering tasks to
diff --git a/drivers/mtd/mtdchar.c b/drivers/mtd/mtdchar.c
index 145b3d0dc0db..4c36ef66a46b 100644
--- a/drivers/mtd/mtdchar.c
+++ b/drivers/mtd/mtdchar.c
@@ -234,7 +234,7 @@ static ssize_t mtd_read(struct file *file, char __user *buf, size_t count,loff_t
234 * the data. For our userspace tools it is important 234 * the data. For our userspace tools it is important
235 * to dump areas with ecc errors ! 235 * to dump areas with ecc errors !
236 * For kernel internal usage it also might return -EUCLEAN 236 * For kernel internal usage it also might return -EUCLEAN
237 * to signal the caller that a bitflip has occured and has 237 * to signal the caller that a bitflip has occurred and has
238 * been corrected by the ECC algorithm. 238 * been corrected by the ECC algorithm.
239 * Userspace software which accesses NAND this way 239 * Userspace software which accesses NAND this way
240 * must be aware of the fact that it deals with NAND 240 * must be aware of the fact that it deals with NAND
diff --git a/drivers/mtd/mtdswap.c b/drivers/mtd/mtdswap.c
index 237913c5c92c..fed215c4cfa1 100644
--- a/drivers/mtd/mtdswap.c
+++ b/drivers/mtd/mtdswap.c
@@ -1452,7 +1452,7 @@ static void mtdswap_add_mtd(struct mtd_blktrans_ops *tr, struct mtd_info *mtd)
1452 oinfo = mtd->ecclayout; 1452 oinfo = mtd->ecclayout;
1453 if (!mtd->oobsize || !oinfo || oinfo->oobavail < MTDSWAP_OOBSIZE) { 1453 if (!mtd->oobsize || !oinfo || oinfo->oobavail < MTDSWAP_OOBSIZE) {
1454 printk(KERN_ERR "%s: Not enough free bytes in OOB, " 1454 printk(KERN_ERR "%s: Not enough free bytes in OOB, "
1455 "%d available, %lu needed.\n", 1455 "%d available, %zu needed.\n",
1456 MTDSWAP_PREFIX, oinfo->oobavail, MTDSWAP_OOBSIZE); 1456 MTDSWAP_PREFIX, oinfo->oobavail, MTDSWAP_OOBSIZE);
1457 return; 1457 return;
1458 } 1458 }
diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
index a92054e945e1..edec457d361d 100644
--- a/drivers/mtd/nand/Kconfig
+++ b/drivers/mtd/nand/Kconfig
@@ -239,7 +239,7 @@ config MTD_NAND_BCM_UMI
239 help 239 help
240 This enables the NAND flash controller on the BCM UMI block. 240 This enables the NAND flash controller on the BCM UMI block.
241 241
242 No board specfic support is done by this driver, each board 242 No board specific support is done by this driver, each board
243 must advertise a platform_device for the driver to attach. 243 must advertise a platform_device for the driver to attach.
244 244
245config MTD_NAND_BCM_UMI_HWCS 245config MTD_NAND_BCM_UMI_HWCS
diff --git a/drivers/mtd/nand/ams-delta.c b/drivers/mtd/nand/ams-delta.c
index a067d090cb31..bc65bf71e1a2 100644
--- a/drivers/mtd/nand/ams-delta.c
+++ b/drivers/mtd/nand/ams-delta.c
@@ -228,7 +228,7 @@ static int __devinit ams_delta_init(struct platform_device *pdev)
228 AMS_DELTA_LATCH2_NAND_NCE | 228 AMS_DELTA_LATCH2_NAND_NCE |
229 AMS_DELTA_LATCH2_NAND_NWP); 229 AMS_DELTA_LATCH2_NAND_NWP);
230 230
231 /* Scan to find existance of the device */ 231 /* Scan to find existence of the device */
232 if (nand_scan(ams_delta_mtd, 1)) { 232 if (nand_scan(ams_delta_mtd, 1)) {
233 err = -ENXIO; 233 err = -ENXIO;
234 goto out_mtd; 234 goto out_mtd;
diff --git a/drivers/mtd/nand/atmel_nand.c b/drivers/mtd/nand/atmel_nand.c
index 6fae04b3fc6d..950646aa4c4b 100644
--- a/drivers/mtd/nand/atmel_nand.c
+++ b/drivers/mtd/nand/atmel_nand.c
@@ -209,22 +209,8 @@ static int atmel_nand_dma_op(struct mtd_info *mtd, void *buf, int len,
209 int err = -EIO; 209 int err = -EIO;
210 enum dma_data_direction dir = is_read ? DMA_FROM_DEVICE : DMA_TO_DEVICE; 210 enum dma_data_direction dir = is_read ? DMA_FROM_DEVICE : DMA_TO_DEVICE;
211 211
212 if (buf >= high_memory) { 212 if (buf >= high_memory)
213 struct page *pg; 213 goto err_buf;
214
215 if (((size_t)buf & PAGE_MASK) !=
216 ((size_t)(buf + len - 1) & PAGE_MASK)) {
217 dev_warn(host->dev, "Buffer not fit in one page\n");
218 goto err_buf;
219 }
220
221 pg = vmalloc_to_page(buf);
222 if (pg == 0) {
223 dev_err(host->dev, "Failed to vmalloc_to_page\n");
224 goto err_buf;
225 }
226 p = page_address(pg) + ((size_t)buf & ~PAGE_MASK);
227 }
228 214
229 dma_dev = host->dma_chan->device; 215 dma_dev = host->dma_chan->device;
230 216
@@ -280,7 +266,8 @@ static void atmel_read_buf(struct mtd_info *mtd, u8 *buf, int len)
280 struct nand_chip *chip = mtd->priv; 266 struct nand_chip *chip = mtd->priv;
281 struct atmel_nand_host *host = chip->priv; 267 struct atmel_nand_host *host = chip->priv;
282 268
283 if (use_dma && len >= mtd->oobsize) 269 if (use_dma && len > mtd->oobsize)
270 /* only use DMA for bigger than oob size: better performances */
284 if (atmel_nand_dma_op(mtd, buf, len, 1) == 0) 271 if (atmel_nand_dma_op(mtd, buf, len, 1) == 0)
285 return; 272 return;
286 273
@@ -295,7 +282,8 @@ static void atmel_write_buf(struct mtd_info *mtd, const u8 *buf, int len)
295 struct nand_chip *chip = mtd->priv; 282 struct nand_chip *chip = mtd->priv;
296 struct atmel_nand_host *host = chip->priv; 283 struct atmel_nand_host *host = chip->priv;
297 284
298 if (use_dma && len >= mtd->oobsize) 285 if (use_dma && len > mtd->oobsize)
286 /* only use DMA for bigger than oob size: better performances */
299 if (atmel_nand_dma_op(mtd, (void *)buf, len, 0) == 0) 287 if (atmel_nand_dma_op(mtd, (void *)buf, len, 0) == 0)
300 return; 288 return;
301 289
@@ -599,7 +587,10 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
599 nand_chip->options |= NAND_USE_FLASH_BBT; 587 nand_chip->options |= NAND_USE_FLASH_BBT;
600 } 588 }
601 589
602 if (cpu_has_dma() && use_dma) { 590 if (!cpu_has_dma())
591 use_dma = 0;
592
593 if (use_dma) {
603 dma_cap_mask_t mask; 594 dma_cap_mask_t mask;
604 595
605 dma_cap_zero(mask); 596 dma_cap_zero(mask);
@@ -611,7 +602,8 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
611 } 602 }
612 } 603 }
613 if (use_dma) 604 if (use_dma)
614 dev_info(host->dev, "Using DMA for NAND access.\n"); 605 dev_info(host->dev, "Using %s for DMA transfers.\n",
606 dma_chan_name(host->dma_chan));
615 else 607 else
616 dev_info(host->dev, "No DMA support for NAND access.\n"); 608 dev_info(host->dev, "No DMA support for NAND access.\n");
617 609
diff --git a/drivers/mtd/nand/autcpu12.c b/drivers/mtd/nand/autcpu12.c
index 7c95da1f612c..0911cf03db80 100644
--- a/drivers/mtd/nand/autcpu12.c
+++ b/drivers/mtd/nand/autcpu12.c
@@ -176,7 +176,7 @@ static int __init autcpu12_init(void)
176 */ 176 */
177 this->options = NAND_USE_FLASH_BBT; 177 this->options = NAND_USE_FLASH_BBT;
178 178
179 /* Scan to find existance of the device */ 179 /* Scan to find existence of the device */
180 if (nand_scan(autcpu12_mtd, 1)) { 180 if (nand_scan(autcpu12_mtd, 1)) {
181 err = -ENXIO; 181 err = -ENXIO;
182 goto out_ior; 182 goto out_ior;
diff --git a/drivers/mtd/nand/cs553x_nand.c b/drivers/mtd/nand/cs553x_nand.c
index 9f1b451005ca..71c35a0b9826 100644
--- a/drivers/mtd/nand/cs553x_nand.c
+++ b/drivers/mtd/nand/cs553x_nand.c
@@ -241,7 +241,7 @@ static int __init cs553x_init_one(int cs, int mmio, unsigned long adr)
241 /* Enable the following for a flash based bad block table */ 241 /* Enable the following for a flash based bad block table */
242 this->options = NAND_USE_FLASH_BBT | NAND_NO_AUTOINCR; 242 this->options = NAND_USE_FLASH_BBT | NAND_NO_AUTOINCR;
243 243
244 /* Scan to find existance of the device */ 244 /* Scan to find existence of the device */
245 if (nand_scan(new_mtd, 1)) { 245 if (nand_scan(new_mtd, 1)) {
246 err = -ENXIO; 246 err = -ENXIO;
247 goto out_ior; 247 goto out_ior;
diff --git a/drivers/mtd/nand/denali.c b/drivers/mtd/nand/denali.c
index 8c8d3c86c0e8..4633f094c510 100644
--- a/drivers/mtd/nand/denali.c
+++ b/drivers/mtd/nand/denali.c
@@ -724,7 +724,7 @@ static uint32_t wait_for_irq(struct denali_nand_info *denali, uint32_t irq_mask)
724} 724}
725 725
726/* This helper function setups the registers for ECC and whether or not 726/* This helper function setups the registers for ECC and whether or not
727 * the spare area will be transfered. */ 727 * the spare area will be transferred. */
728static void setup_ecc_for_xfer(struct denali_nand_info *denali, bool ecc_en, 728static void setup_ecc_for_xfer(struct denali_nand_info *denali, bool ecc_en,
729 bool transfer_spare) 729 bool transfer_spare)
730{ 730{
@@ -965,7 +965,7 @@ static bool handle_ecc(struct denali_nand_info *denali, uint8_t *buf,
965 965
966 if (ECC_ERROR_CORRECTABLE(err_correction_info)) { 966 if (ECC_ERROR_CORRECTABLE(err_correction_info)) {
967 /* If err_byte is larger than ECC_SECTOR_SIZE, 967 /* If err_byte is larger than ECC_SECTOR_SIZE,
968 * means error happend in OOB, so we ignore 968 * means error happened in OOB, so we ignore
969 * it. It's no need for us to correct it 969 * it. It's no need for us to correct it
970 * err_device is represented the NAND error 970 * err_device is represented the NAND error
971 * bits are happened in if there are more 971 * bits are happened in if there are more
@@ -1109,7 +1109,7 @@ static void denali_write_page(struct mtd_info *mtd, struct nand_chip *chip,
1109} 1109}
1110 1110
1111/* This is the callback that the NAND core calls to write a page without ECC. 1111/* This is the callback that the NAND core calls to write a page without ECC.
1112 * raw access is similiar to ECC page writes, so all the work is done in the 1112 * raw access is similar to ECC page writes, so all the work is done in the
1113 * write_page() function above. 1113 * write_page() function above.
1114 */ 1114 */
1115static void denali_write_page_raw(struct mtd_info *mtd, struct nand_chip *chip, 1115static void denali_write_page_raw(struct mtd_info *mtd, struct nand_chip *chip,
diff --git a/drivers/mtd/nand/diskonchip.c b/drivers/mtd/nand/diskonchip.c
index b7f8de7b2780..96c0b34ba8db 100644
--- a/drivers/mtd/nand/diskonchip.c
+++ b/drivers/mtd/nand/diskonchip.c
@@ -137,7 +137,7 @@ static struct rs_control *rs_decoder;
137 * 137 *
138 * Fabrice Bellard figured this out in the old docecc code. I added 138 * Fabrice Bellard figured this out in the old docecc code. I added
139 * some comments, improved a minor bit and converted it to make use 139 * some comments, improved a minor bit and converted it to make use
140 * of the generic Reed-Solomon libary. tglx 140 * of the generic Reed-Solomon library. tglx
141 */ 141 */
142static int doc_ecc_decode(struct rs_control *rs, uint8_t *data, uint8_t *ecc) 142static int doc_ecc_decode(struct rs_control *rs, uint8_t *data, uint8_t *ecc)
143{ 143{
@@ -400,7 +400,7 @@ static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr)
400 doc200x_hwcontrol(mtd, 0, NAND_CTRL_ALE | NAND_CTRL_CHANGE); 400 doc200x_hwcontrol(mtd, 0, NAND_CTRL_ALE | NAND_CTRL_CHANGE);
401 doc200x_hwcontrol(mtd, NAND_CMD_NONE, NAND_NCE | NAND_CTRL_CHANGE); 401 doc200x_hwcontrol(mtd, NAND_CMD_NONE, NAND_NCE | NAND_CTRL_CHANGE);
402 402
403 /* We cant' use dev_ready here, but at least we wait for the 403 /* We can't' use dev_ready here, but at least we wait for the
404 * command to complete 404 * command to complete
405 */ 405 */
406 udelay(50); 406 udelay(50);
@@ -986,7 +986,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat,
986 dummy = ReadDOC(docptr, ECCConf); 986 dummy = ReadDOC(docptr, ECCConf);
987 } 987 }
988 988
989 /* Error occured ? */ 989 /* Error occurred ? */
990 if (dummy & 0x80) { 990 if (dummy & 0x80) {
991 for (i = 0; i < 6; i++) { 991 for (i = 0; i < 6; i++) {
992 if (DoC_is_MillenniumPlus(doc)) 992 if (DoC_is_MillenniumPlus(doc))
@@ -1160,7 +1160,7 @@ static inline int __init nftl_partscan(struct mtd_info *mtd, struct mtd_partitio
1160 /* NOTE: The lines below modify internal variables of the NAND and MTD 1160 /* NOTE: The lines below modify internal variables of the NAND and MTD
1161 layers; variables with have already been configured by nand_scan. 1161 layers; variables with have already been configured by nand_scan.
1162 Unfortunately, we didn't know before this point what these values 1162 Unfortunately, we didn't know before this point what these values
1163 should be. Thus, this code is somewhat dependant on the exact 1163 should be. Thus, this code is somewhat dependent on the exact
1164 implementation of the NAND layer. */ 1164 implementation of the NAND layer. */
1165 if (mh->UnitSizeFactor != 0xff) { 1165 if (mh->UnitSizeFactor != 0xff) {
1166 this->bbt_erase_shift += (0xff - mh->UnitSizeFactor); 1166 this->bbt_erase_shift += (0xff - mh->UnitSizeFactor);
diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c
index 7a13d42cbabd..537e380b8dcb 100644
--- a/drivers/mtd/nand/fsl_elbc_nand.c
+++ b/drivers/mtd/nand/fsl_elbc_nand.c
@@ -59,7 +59,7 @@ struct fsl_elbc_mtd {
59 unsigned int fmr; /* FCM Flash Mode Register value */ 59 unsigned int fmr; /* FCM Flash Mode Register value */
60}; 60};
61 61
62/* Freescale eLBC FCM controller infomation */ 62/* Freescale eLBC FCM controller information */
63 63
64struct fsl_elbc_fcm_ctrl { 64struct fsl_elbc_fcm_ctrl {
65 struct nand_hw_control controller; 65 struct nand_hw_control controller;
diff --git a/drivers/mtd/nand/fsmc_nand.c b/drivers/mtd/nand/fsmc_nand.c
index 205b10b9f9b9..0d45ef3883e8 100644
--- a/drivers/mtd/nand/fsmc_nand.c
+++ b/drivers/mtd/nand/fsmc_nand.c
@@ -335,7 +335,7 @@ static void fsmc_enable_hwecc(struct mtd_info *mtd, int mode)
335 335
336/* 336/*
337 * fsmc_read_hwecc_ecc4 - Hardware ECC calculator for ecc4 option supported by 337 * fsmc_read_hwecc_ecc4 - Hardware ECC calculator for ecc4 option supported by
338 * FSMC. ECC is 13 bytes for 512 bytes of data (supports error correction upto 338 * FSMC. ECC is 13 bytes for 512 bytes of data (supports error correction up to
339 * max of 8-bits) 339 * max of 8-bits)
340 */ 340 */
341static int fsmc_read_hwecc_ecc4(struct mtd_info *mtd, const uint8_t *data, 341static int fsmc_read_hwecc_ecc4(struct mtd_info *mtd, const uint8_t *data,
@@ -381,7 +381,7 @@ static int fsmc_read_hwecc_ecc4(struct mtd_info *mtd, const uint8_t *data,
381 381
382/* 382/*
383 * fsmc_read_hwecc_ecc1 - Hardware ECC calculator for ecc1 option supported by 383 * fsmc_read_hwecc_ecc1 - Hardware ECC calculator for ecc1 option supported by
384 * FSMC. ECC is 3 bytes for 512 bytes of data (supports error correction upto 384 * FSMC. ECC is 3 bytes for 512 bytes of data (supports error correction up to
385 * max of 1-bit) 385 * max of 1-bit)
386 */ 386 */
387static int fsmc_read_hwecc_ecc1(struct mtd_info *mtd, const uint8_t *data, 387static int fsmc_read_hwecc_ecc1(struct mtd_info *mtd, const uint8_t *data,
@@ -408,10 +408,10 @@ static int fsmc_read_hwecc_ecc1(struct mtd_info *mtd, const uint8_t *data,
408 * @buf: buffer to store read data 408 * @buf: buffer to store read data
409 * @page: page number to read 409 * @page: page number to read
410 * 410 *
411 * This routine is needed for fsmc verison 8 as reading from NAND chip has to be 411 * This routine is needed for fsmc version 8 as reading from NAND chip has to be
412 * performed in a strict sequence as follows: 412 * performed in a strict sequence as follows:
413 * data(512 byte) -> ecc(13 byte) 413 * data(512 byte) -> ecc(13 byte)
414 * After this read, fsmc hardware generates and reports error data bits(upto a 414 * After this read, fsmc hardware generates and reports error data bits(up to a
415 * max of 8 bits) 415 * max of 8 bits)
416 */ 416 */
417static int fsmc_read_page_hwecc(struct mtd_info *mtd, struct nand_chip *chip, 417static int fsmc_read_page_hwecc(struct mtd_info *mtd, struct nand_chip *chip,
@@ -686,7 +686,7 @@ static int __init fsmc_nand_probe(struct platform_device *pdev)
686 } 686 }
687 687
688 /* 688 /*
689 * Scan to find existance of the device 689 * Scan to find existence of the device
690 */ 690 */
691 if (nand_scan_ident(&host->mtd, 1, NULL)) { 691 if (nand_scan_ident(&host->mtd, 1, NULL)) {
692 ret = -ENXIO; 692 ret = -ENXIO;
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index 85cfc061d41c..c54a4cbac6bc 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -1582,7 +1582,7 @@ static int nand_do_read_ops(struct mtd_info *mtd, loff_t from,
1582} 1582}
1583 1583
1584/** 1584/**
1585 * nand_read - [MTD Interface] MTD compability function for nand_do_read_ecc 1585 * nand_read - [MTD Interface] MTD compatibility function for nand_do_read_ecc
1586 * @mtd: MTD device structure 1586 * @mtd: MTD device structure
1587 * @from: offset to read from 1587 * @from: offset to read from
1588 * @len: number of bytes to read 1588 * @len: number of bytes to read
diff --git a/drivers/mtd/nand/nand_bbt.c b/drivers/mtd/nand/nand_bbt.c
index a1e8b30078d9..af46428286fe 100644
--- a/drivers/mtd/nand/nand_bbt.c
+++ b/drivers/mtd/nand/nand_bbt.c
@@ -945,7 +945,7 @@ static int check_create(struct mtd_info *mtd, uint8_t *buf, struct nand_bbt_desc
945 rd2 = NULL; 945 rd2 = NULL;
946 /* Per chip or per device ? */ 946 /* Per chip or per device ? */
947 chipsel = (td->options & NAND_BBT_PERCHIP) ? i : -1; 947 chipsel = (td->options & NAND_BBT_PERCHIP) ? i : -1;
948 /* Mirrored table avilable ? */ 948 /* Mirrored table available ? */
949 if (md) { 949 if (md) {
950 if (td->pages[i] == -1 && md->pages[i] == -1) { 950 if (td->pages[i] == -1 && md->pages[i] == -1) {
951 writeops = 0x03; 951 writeops = 0x03;
diff --git a/drivers/mtd/nand/nandsim.c b/drivers/mtd/nand/nandsim.c
index 213181be0d9a..893d95bfea48 100644
--- a/drivers/mtd/nand/nandsim.c
+++ b/drivers/mtd/nand/nandsim.c
@@ -162,7 +162,7 @@ MODULE_PARM_DESC(bitflips, "Maximum number of random bit flips per page (z
162MODULE_PARM_DESC(gravepages, "Pages that lose data [: maximum reads (defaults to 3)]" 162MODULE_PARM_DESC(gravepages, "Pages that lose data [: maximum reads (defaults to 3)]"
163 " separated by commas e.g. 1401:2 means page 1401" 163 " separated by commas e.g. 1401:2 means page 1401"
164 " can be read only twice before failing"); 164 " can be read only twice before failing");
165MODULE_PARM_DESC(rptwear, "Number of erases inbetween reporting wear, if not zero"); 165MODULE_PARM_DESC(rptwear, "Number of erases between reporting wear, if not zero");
166MODULE_PARM_DESC(overridesize, "Specifies the NAND Flash size overriding the ID bytes. " 166MODULE_PARM_DESC(overridesize, "Specifies the NAND Flash size overriding the ID bytes. "
167 "The size is specified in erase blocks and as the exponent of a power of two" 167 "The size is specified in erase blocks and as the exponent of a power of two"
168 " e.g. 5 means a size of 32 erase blocks"); 168 " e.g. 5 means a size of 32 erase blocks");
diff --git a/drivers/mtd/nand/nomadik_nand.c b/drivers/mtd/nand/nomadik_nand.c
index 8c0b69375224..a045a4a581b6 100644
--- a/drivers/mtd/nand/nomadik_nand.c
+++ b/drivers/mtd/nand/nomadik_nand.c
@@ -151,7 +151,7 @@ static int nomadik_nand_probe(struct platform_device *pdev)
151 nand->options = pdata->options; 151 nand->options = pdata->options;
152 152
153 /* 153 /*
154 * Scan to find existance of the device 154 * Scan to find existence of the device
155 */ 155 */
156 if (nand_scan(&host->mtd, 1)) { 156 if (nand_scan(&host->mtd, 1)) {
157 ret = -ENXIO; 157 ret = -ENXIO;
diff --git a/drivers/mtd/nand/pasemi_nand.c b/drivers/mtd/nand/pasemi_nand.c
index 59efa829ef24..20bfe5f15afd 100644
--- a/drivers/mtd/nand/pasemi_nand.c
+++ b/drivers/mtd/nand/pasemi_nand.c
@@ -157,7 +157,7 @@ static int __devinit pasemi_nand_probe(struct platform_device *ofdev)
157 /* Enable the following for a flash based bad block table */ 157 /* Enable the following for a flash based bad block table */
158 chip->options = NAND_USE_FLASH_BBT | NAND_NO_AUTOINCR; 158 chip->options = NAND_USE_FLASH_BBT | NAND_NO_AUTOINCR;
159 159
160 /* Scan to find existance of the device */ 160 /* Scan to find existence of the device */
161 if (nand_scan(pasemi_nand_mtd, 1)) { 161 if (nand_scan(pasemi_nand_mtd, 1)) {
162 err = -ENXIO; 162 err = -ENXIO;
163 goto out_lpc; 163 goto out_lpc;
diff --git a/drivers/mtd/nand/plat_nand.c b/drivers/mtd/nand/plat_nand.c
index 317aff428e42..caf5a736340a 100644
--- a/drivers/mtd/nand/plat_nand.c
+++ b/drivers/mtd/nand/plat_nand.c
@@ -95,7 +95,7 @@ static int __devinit plat_nand_probe(struct platform_device *pdev)
95 goto out; 95 goto out;
96 } 96 }
97 97
98 /* Scan to find existance of the device */ 98 /* Scan to find existence of the device */
99 if (nand_scan(&data->mtd, pdata->chip.nr_chips)) { 99 if (nand_scan(&data->mtd, pdata->chip.nr_chips)) {
100 err = -ENXIO; 100 err = -ENXIO;
101 goto out; 101 goto out;
diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
index ab7f4c33ced6..ff0701276d65 100644
--- a/drivers/mtd/nand/pxa3xx_nand.c
+++ b/drivers/mtd/nand/pxa3xx_nand.c
@@ -184,7 +184,7 @@ struct pxa3xx_nand_info {
184 184
185static int use_dma = 1; 185static int use_dma = 1;
186module_param(use_dma, bool, 0444); 186module_param(use_dma, bool, 0444);
187MODULE_PARM_DESC(use_dma, "enable DMA for data transfering to/from NAND HW"); 187MODULE_PARM_DESC(use_dma, "enable DMA for data transferring to/from NAND HW");
188 188
189/* 189/*
190 * Default NAND flash controller configuration setup by the 190 * Default NAND flash controller configuration setup by the
diff --git a/drivers/mtd/nand/r852.c b/drivers/mtd/nand/r852.c
index 6322d1fb5d62..cae2e013c986 100644
--- a/drivers/mtd/nand/r852.c
+++ b/drivers/mtd/nand/r852.c
@@ -185,7 +185,7 @@ static void r852_do_dma(struct r852_device *dev, uint8_t *buf, int do_read)
185 185
186 dbg_verbose("doing dma %s ", do_read ? "read" : "write"); 186 dbg_verbose("doing dma %s ", do_read ? "read" : "write");
187 187
188 /* Set intial dma state: for reading first fill on board buffer, 188 /* Set initial dma state: for reading first fill on board buffer,
189 from device, for writes first fill the buffer from memory*/ 189 from device, for writes first fill the buffer from memory*/
190 dev->dma_state = do_read ? DMA_INTERNAL : DMA_MEMORY; 190 dev->dma_state = do_read ? DMA_INTERNAL : DMA_MEMORY;
191 191
@@ -766,7 +766,7 @@ static irqreturn_t r852_irq(int irq, void *data)
766 ret = IRQ_HANDLED; 766 ret = IRQ_HANDLED;
767 dev->card_detected = !!(card_status & R852_CARD_IRQ_INSERT); 767 dev->card_detected = !!(card_status & R852_CARD_IRQ_INSERT);
768 768
769 /* we shouldn't recieve any interrupts if we wait for card 769 /* we shouldn't receive any interrupts if we wait for card
770 to settle */ 770 to settle */
771 WARN_ON(dev->card_unstable); 771 WARN_ON(dev->card_unstable);
772 772
@@ -794,13 +794,13 @@ static irqreturn_t r852_irq(int irq, void *data)
794 ret = IRQ_HANDLED; 794 ret = IRQ_HANDLED;
795 795
796 if (dma_status & R852_DMA_IRQ_ERROR) { 796 if (dma_status & R852_DMA_IRQ_ERROR) {
797 dbg("recieved dma error IRQ"); 797 dbg("received dma error IRQ");
798 r852_dma_done(dev, -EIO); 798 r852_dma_done(dev, -EIO);
799 complete(&dev->dma_done); 799 complete(&dev->dma_done);
800 goto out; 800 goto out;
801 } 801 }
802 802
803 /* recieved DMA interrupt out of nowhere? */ 803 /* received DMA interrupt out of nowhere? */
804 WARN_ON_ONCE(dev->dma_stage == 0); 804 WARN_ON_ONCE(dev->dma_stage == 0);
805 805
806 if (dev->dma_stage == 0) 806 if (dev->dma_stage == 0)
@@ -960,7 +960,7 @@ int r852_probe(struct pci_dev *pci_dev, const struct pci_device_id *id)
960 &dev->card_detect_work, 0); 960 &dev->card_detect_work, 0);
961 961
962 962
963 printk(KERN_NOTICE DRV_NAME ": driver loaded succesfully\n"); 963 printk(KERN_NOTICE DRV_NAME ": driver loaded successfully\n");
964 return 0; 964 return 0;
965 965
966error10: 966error10:
diff --git a/drivers/mtd/nand/sh_flctl.c b/drivers/mtd/nand/sh_flctl.c
index 546c2f0eb2e8..81bbb5ee148d 100644
--- a/drivers/mtd/nand/sh_flctl.c
+++ b/drivers/mtd/nand/sh_flctl.c
@@ -78,7 +78,7 @@ static void start_translation(struct sh_flctl *flctl)
78 78
79static void timeout_error(struct sh_flctl *flctl, const char *str) 79static void timeout_error(struct sh_flctl *flctl, const char *str)
80{ 80{
81 dev_err(&flctl->pdev->dev, "Timeout occured in %s\n", str); 81 dev_err(&flctl->pdev->dev, "Timeout occurred in %s\n", str);
82} 82}
83 83
84static void wait_completion(struct sh_flctl *flctl) 84static void wait_completion(struct sh_flctl *flctl)
diff --git a/drivers/mtd/nand/sm_common.c b/drivers/mtd/nand/sm_common.c
index 4a8f367c295c..57cc80cd01a3 100644
--- a/drivers/mtd/nand/sm_common.c
+++ b/drivers/mtd/nand/sm_common.c
@@ -121,7 +121,7 @@ int sm_register_device(struct mtd_info *mtd, int smartmedia)
121 if (ret) 121 if (ret)
122 return ret; 122 return ret;
123 123
124 /* Bad block marker postion */ 124 /* Bad block marker position */
125 chip->badblockpos = 0x05; 125 chip->badblockpos = 0x05;
126 chip->badblockbits = 7; 126 chip->badblockbits = 7;
127 chip->block_markbad = sm_block_markbad; 127 chip->block_markbad = sm_block_markbad;
diff --git a/drivers/mtd/nand/tmio_nand.c b/drivers/mtd/nand/tmio_nand.c
index 38fb16771f85..14c578707824 100644
--- a/drivers/mtd/nand/tmio_nand.c
+++ b/drivers/mtd/nand/tmio_nand.c
@@ -4,7 +4,7 @@
4 * Slightly murky pre-git history of the driver: 4 * Slightly murky pre-git history of the driver:
5 * 5 *
6 * Copyright (c) Ian Molton 2004, 2005, 2008 6 * Copyright (c) Ian Molton 2004, 2005, 2008
7 * Original work, independant of sharps code. Included hardware ECC support. 7 * Original work, independent of sharps code. Included hardware ECC support.
8 * Hard ECC did not work for writes in the early revisions. 8 * Hard ECC did not work for writes in the early revisions.
9 * Copyright (c) Dirk Opfer 2005. 9 * Copyright (c) Dirk Opfer 2005.
10 * Modifications developed from sharps code but 10 * Modifications developed from sharps code but
diff --git a/drivers/mtd/onenand/omap2.c b/drivers/mtd/onenand/omap2.c
index f591f615d3f6..1fcb41adab07 100644
--- a/drivers/mtd/onenand/omap2.c
+++ b/drivers/mtd/onenand/omap2.c
@@ -608,7 +608,7 @@ static int omap2_onenand_enable(struct mtd_info *mtd)
608 608
609 ret = regulator_enable(c->regulator); 609 ret = regulator_enable(c->regulator);
610 if (ret != 0) 610 if (ret != 0)
611 dev_err(&c->pdev->dev, "cant enable regulator\n"); 611 dev_err(&c->pdev->dev, "can't enable regulator\n");
612 612
613 return ret; 613 return ret;
614} 614}
@@ -620,7 +620,7 @@ static int omap2_onenand_disable(struct mtd_info *mtd)
620 620
621 ret = regulator_disable(c->regulator); 621 ret = regulator_disable(c->regulator);
622 if (ret != 0) 622 if (ret != 0)
623 dev_err(&c->pdev->dev, "cant disable regulator\n"); 623 dev_err(&c->pdev->dev, "can't disable regulator\n");
624 624
625 return ret; 625 return ret;
626} 626}
diff --git a/drivers/mtd/onenand/onenand_sim.c b/drivers/mtd/onenand/onenand_sim.c
index 8b246061d511..5ef3bd547772 100644
--- a/drivers/mtd/onenand/onenand_sim.c
+++ b/drivers/mtd/onenand/onenand_sim.c
@@ -321,7 +321,7 @@ static void onenand_data_handle(struct onenand_chip *this, int cmd,
321 continue; 321 continue;
322 if (memcmp(dest + off, ffchars, this->subpagesize) && 322 if (memcmp(dest + off, ffchars, this->subpagesize) &&
323 onenand_check_overwrite(dest + off, src + off, this->subpagesize)) 323 onenand_check_overwrite(dest + off, src + off, this->subpagesize))
324 printk(KERN_ERR "over-write happend at 0x%08x\n", offset); 324 printk(KERN_ERR "over-write happened at 0x%08x\n", offset);
325 memcpy(dest + off, src + off, this->subpagesize); 325 memcpy(dest + off, src + off, this->subpagesize);
326 } 326 }
327 /* Fall through */ 327 /* Fall through */
@@ -335,7 +335,7 @@ static void onenand_data_handle(struct onenand_chip *this, int cmd,
335 dest = ONENAND_CORE_SPARE(flash, this, offset); 335 dest = ONENAND_CORE_SPARE(flash, this, offset);
336 if (memcmp(dest, ffchars, mtd->oobsize) && 336 if (memcmp(dest, ffchars, mtd->oobsize) &&
337 onenand_check_overwrite(dest, src, mtd->oobsize)) 337 onenand_check_overwrite(dest, src, mtd->oobsize))
338 printk(KERN_ERR "OOB: over-write happend at 0x%08x\n", 338 printk(KERN_ERR "OOB: over-write happened at 0x%08x\n",
339 offset); 339 offset);
340 memcpy(dest, src, mtd->oobsize); 340 memcpy(dest, src, mtd->oobsize);
341 break; 341 break;
diff --git a/drivers/mtd/sm_ftl.c b/drivers/mtd/sm_ftl.c
index 2b0daae4018d..ed3d6cd2c6dc 100644
--- a/drivers/mtd/sm_ftl.c
+++ b/drivers/mtd/sm_ftl.c
@@ -540,7 +540,7 @@ static int sm_check_block(struct sm_ftl *ftl, int zone, int block)
540 return -EIO; 540 return -EIO;
541 } 541 }
542 542
543 /* If the block is sliced (partialy erased usually) erase it */ 543 /* If the block is sliced (partially erased usually) erase it */
544 if (i == 2) { 544 if (i == 2) {
545 sm_erase_block(ftl, zone, block, 1); 545 sm_erase_block(ftl, zone, block, 1);
546 return 1; 546 return 1;
@@ -878,7 +878,7 @@ static int sm_init_zone(struct sm_ftl *ftl, int zone_num)
878 return 0; 878 return 0;
879} 879}
880 880
881/* Get and automaticly initialize an FTL mapping for one zone */ 881/* Get and automatically initialize an FTL mapping for one zone */
882struct ftl_zone *sm_get_zone(struct sm_ftl *ftl, int zone_num) 882struct ftl_zone *sm_get_zone(struct sm_ftl *ftl, int zone_num)
883{ 883{
884 struct ftl_zone *zone; 884 struct ftl_zone *zone;
diff --git a/drivers/mtd/ubi/Kconfig b/drivers/mtd/ubi/Kconfig
index 6abeb4f13403..4dcc752a0c0b 100644
--- a/drivers/mtd/ubi/Kconfig
+++ b/drivers/mtd/ubi/Kconfig
@@ -56,7 +56,7 @@ config MTD_UBI_DEBUG
56 bool "UBI debugging" 56 bool "UBI debugging"
57 depends on SYSFS 57 depends on SYSFS
58 select DEBUG_FS 58 select DEBUG_FS
59 select KALLSYMS_ALL if KALLSYMS && DEBUG_KERNEL 59 select KALLSYMS
60 help 60 help
61 This option enables UBI debugging. 61 This option enables UBI debugging.
62 62
diff --git a/drivers/mtd/ubi/io.c b/drivers/mtd/ubi/io.c
index eededf94f5a6..e347cc4388ed 100644
--- a/drivers/mtd/ubi/io.c
+++ b/drivers/mtd/ubi/io.c
@@ -344,6 +344,12 @@ static int do_sync_erase(struct ubi_device *ubi, int pnum)
344 wait_queue_head_t wq; 344 wait_queue_head_t wq;
345 345
346 dbg_io("erase PEB %d", pnum); 346 dbg_io("erase PEB %d", pnum);
347 ubi_assert(pnum >= 0 && pnum < ubi->peb_count);
348
349 if (ubi->ro_mode) {
350 ubi_err("read-only mode");
351 return -EROFS;
352 }
347 353
348retry: 354retry:
349 init_waitqueue_head(&wq); 355 init_waitqueue_head(&wq);
@@ -390,7 +396,7 @@ retry:
390 if (err) 396 if (err)
391 return err; 397 return err;
392 398
393 if (ubi_dbg_is_erase_failure() && !err) { 399 if (ubi_dbg_is_erase_failure()) {
394 dbg_err("cannot erase PEB %d (emulated)", pnum); 400 dbg_err("cannot erase PEB %d (emulated)", pnum);
395 return -EIO; 401 return -EIO;
396 } 402 }
diff --git a/drivers/mtd/ubi/scan.c b/drivers/mtd/ubi/scan.c
index 11eb8ef12485..d2d12ab7def4 100644
--- a/drivers/mtd/ubi/scan.c
+++ b/drivers/mtd/ubi/scan.c
@@ -968,7 +968,7 @@ static int process_eb(struct ubi_device *ubi, struct ubi_scan_info *si,
968 * contains garbage because of a power cut during erase 968 * contains garbage because of a power cut during erase
969 * operation. So we just schedule this PEB for erasure. 969 * operation. So we just schedule this PEB for erasure.
970 * 970 *
971 * Besides, in case of NOR flash, we deliberatly 971 * Besides, in case of NOR flash, we deliberately
972 * corrupt both headers because NOR flash erasure is 972 * corrupt both headers because NOR flash erasure is
973 * slow and can start from the end. 973 * slow and can start from the end.
974 */ 974 */
diff --git a/drivers/mtd/ubi/vmt.c b/drivers/mtd/ubi/vmt.c
index b79e0dea3632..366eb70219a6 100644
--- a/drivers/mtd/ubi/vmt.c
+++ b/drivers/mtd/ubi/vmt.c
@@ -790,11 +790,6 @@ static int paranoid_check_volume(struct ubi_device *ubi, int vol_id)
790 goto fail; 790 goto fail;
791 } 791 }
792 792
793 if (!vol->name) {
794 ubi_err("NULL volume name");
795 goto fail;
796 }
797
798 n = strnlen(vol->name, vol->name_len + 1); 793 n = strnlen(vol->name, vol->name_len + 1);
799 if (n != vol->name_len) { 794 if (n != vol->name_len) {
800 ubi_err("bad name_len %lld", n); 795 ubi_err("bad name_len %lld", n);