26 Feb, 2007
1 commit
-
Noticed while building a s3c2410 kernel :
drivers/mtd/nand/s3c2410.c: In function 's3c2440_nand_calculate_ecc':
drivers/mtd/nand/s3c2410.c:476: warning: format '%06x' expects type 'unsigned int', but argument 3 has type 'long unsigned int'This patch fixes it.
Signed-off-by: Arnaud Patard
Signed-off-by: Russell King
20 Feb, 2007
1 commit
-
* git://git.infradead.org/mtd-2.6: (49 commits)
[MTD] [NAND] S3C2412 fix hw ecc
[MTD] [NAND] Work around false compiler warning in CAFÉ driver
[JFFS2] printk warning fixes
[MTD] [MAPS] ichxrom warning fix
[MTD] [MAPS] amd76xrom warning fix
[MTD] [MAPS] esb2rom warning fixes
[MTD] [MAPS] ck804xrom warning fix
[MTD] [MAPS] netsc520 warning fix
[MTD] [MAPS] sc520cdp warning fix
[MTD] [ONENAND] onenand_base warning fix
[MTD] [NAND] eXcite nand flash driver
[MTD] Improve heuristic for detecting wrong-endian RedBoot partition table
[MTD] Fix RedBoot partition parsing regression harder.
[MTD] [NAND] S3C2410: Hardware ECC correction code
[JFFS2] Use MTD_OOB_AUTO to automatically place cleanmarker on NAND
[MTD] Clarify OOB-operation interface comments
[MTD] remove unused ecctype,eccsize fields from struct mtd_info
[MTD] [NOR] Intel: remove ugly PROGREGION macros
[MTD] [NOR] STAA: use writesize instead off eccsize to represent ECC block
[MTD] OneNAND: Invalidate bufferRAM after erase
...
19 Feb, 2007
9 commits
-
S3C2412 use differents registers than s3c2440 for hw ecc handling.
Signed-off-by: Matthieu CASTET
Acked-by: Ben Dooks
Signed-off-by: David Woodhouse -
drivers/mtd/nand/cafe.c: In function 'cafe_nand_cmdfunc':
drivers/mtd/nand/cafe.c:269: warning: 'irqs' may be used uninitialized in this functionSigned-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/maps/ichxrom.c: In function 'ichxrom_init_one':
drivers/mtd/maps/ichxrom.c:231: warning: format '%08lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t'
drivers/mtd/maps/ichxrom.c:231: warning: format '%08lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t'Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/maps/amd76xrom.c: In function 'amd76xrom_init_one':
drivers/mtd/maps/amd76xrom.c:209: warning: format '%08lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t'Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/maps/esb2rom.c: In function 'esb2rom_init_one':
drivers/mtd/maps/esb2rom.c:293: warning: format '%08lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t'Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/maps/ck804xrom.c: In function 'ck804xrom_init_one':
drivers/mtd/maps/ck804xrom.c:211: warning: format '%08lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t'
drivers/mtd/maps/ck804xrom.c:211: warning: format '%08lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t'Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/maps/netsc520.c: In function 'init_netsc520':
drivers/mtd/maps/netsc520.c:97: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'resource_size_t'Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/maps/sc520cdp.c:241: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'resource_size_t'
drivers/mtd/maps/netsc520.c: In function 'init_netsc520':Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
drivers/mtd/onenand/onenand_base.c: In function 'onenand_bbt_read_oob':
drivers/mtd/onenand/onenand_base.c:1033: warning: format '%i' expects type 'int', but argument 3 has type 'size_t'Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse
15 Feb, 2007
2 commits
-
The obsolete SA_xxx interrupt flags have been used despite the scheduled
removal. Fixup the remaining users in -mm.Signed-off-by: Thomas Gleixner
Acked-by: Ingo Molnar
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
After Al Viro (finally) succeeded in removing the sched.h #include in module.h
recently, it makes sense again to remove other superfluous sched.h includes.
There are quite a lot of files which include it but don't actually need
anything defined in there. Presumably these includes were once needed for
macros that used to live in sched.h, but moved to other header files in the
course of cleaning it up.To ease the pain, this time I did not fiddle with any header files and only
removed #includes from .c-files, which tend to cause less trouble.Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
configs in arch/arm/configs on arm. I also checked that no new warnings were
introduced by the patch (actually, some warnings are removed that were emitted
by unnecessarily included header files).Signed-off-by: Tim Schmielau
Acked-by: Russell King
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
13 Feb, 2007
1 commit
-
Many struct file_operations in the kernel can be "const". Marking them const
moves these to the .rodata section, which avoids false sharing with potential
dirty data. In addition it'll catch accidental writes at compile time to
these shared resources.Signed-off-by: Arjan van de Ven
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
12 Feb, 2007
2 commits
-
Convert all calls to invalidate_inode_pages() into open-coded calls to
invalidate_mapping_pages().Leave the invalidate_inode_pages() wrapper in place for now, marked as
deprecated.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This is a nand flash driver for the eXcite series of intelligent
cameras manufactured by Basler Vision Technologies AG.Signed-off-by: Thomas Koeller
Signed-off-by: David Woodhouse
10 Feb, 2007
3 commits
-
Also limit the amount we scan to one eraseblock.
Signed-off-by: David Woodhouse
-
Correct the location of the recalculation of the FIS directory size,
and also add the same recalculation for the byte-swapped case.Signed-off-by: Rod Whitby
Signed-off-by: David Woodhouse -
Add support for correcting errors detected by the
hardware ECC.Signed-off-by: Ben Dooks
Signed-off-by: David Woodhouse
09 Feb, 2007
11 commits
-
Remove unused and broken mtd->ecctype and mtd->eccsize fields
from struct mtd_info. Do not remove them from userspace API
data structures (don't want to breake userspace) but mark them
as obsolete by a comment. Any userspace program which uses them
should be half-broken anyway, so this is more about saving
data structure size.Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
Remove ugly and weird MTD_PROGREGION_CTRLMODE_VALID() and
MTD_PROGREGION_CTRLMODE_INVALID() macros. There is only one
user of them and they are used locally just for printing.Anyway, this patch is a preparation for removing mtd->ecctype
and mtd->eccsize, but these macros use them. Fix this.Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
The cfi_staa_write_buffers() uses mtd->eccsize but means mtd->writesize.
BTW, mtd-eccsize is broken and is not initialized, which means the code
fixed by this patch is broken/unused anyway.Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse -
OneNAND has internal bufferRAMs. The driver keeps track of
what is in the bufferRAM to save having to load from the
NAND core. After an erase operation, the driver must
mark bufferRAM invalid if it refers to the erased block.Signed-off-by: Adrian Hunter
Signed-off-by: David Woodhouse -
This fixes a regression with the RedBoot parsing code introduced by
commit 0b47d654089c5ce3f2ea26a4485db9bcead1e515Signed-off-by: Martin Michlmayr
Signed-off-by: David Woodhouse -
err_pos_lut[4096] of an array with 4096 elements is a bug.
Spotted by the Coverity checker.
While I was at it, I also converted it to ARRAY_SIZE().
Signed-off-by: Adrian Bunk
Signed-off-by: David Woodhouse -
Add checks to ensure that out-of-band reads and writes are
not attempted with an invalid offset or length. Specifically,
the offset must be less than the size of oob for a page
and the length must not go beyond the size of the device.
Additionally the checks must adjust for auto-placement
(MTD_OOB_AUTO) of oob data.Signed-off-by: Adrian Hunter
Signed-off-by: David Woodhouse -
In commit c172471b78255a5cf6d05383d9ebbf0c6683167a Nico switched to using
common code for polling for command completion. Unfortunately he also used
a common default timeout for both write and erase commands, despite the
fact that erases can take a _whole_ lot longer. Use a more sensible
default for erase timeout.Signed-off-by: David Woodhouse
-
CONFIG_MTD_CK804XROM=y, CONFIG_PCI=n results in the following compile
error:CC drivers/mtd/maps/ck804xrom.o
ck804xrom.c: In function 'ck804xrom_init_one':
ck804xrom.c:114: error: implicit declaration of function 'pci_dev_get'
ck804xrom.c:114: warning: assignment makes pointer from integer without a cast
make[4]: *** [drivers/mtd/maps/ck804xrom.o] Error 1Considering what hardware this driver is driving, a dependency on PCI
also seems logical.Signed-off-by: Adrian Bunk
Cc: Ryan Jackson
Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse -
OneNAND double-density package (DDP) has two chips, each with
their own bufferRAM. The driver will skip loading data from
the NAND core if the data can be found in a bufferRAM, however
in that case, the correct chip's bufferRAM must be selected
before reading from bufferRAM.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
07 Feb, 2007
2 commits
-
Provide the bad block scan with its own read function so that important error
messages that are not from the the bad block scan, can always be printed.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park -
When a write is done, the length written is returned. When a
single subpage is written the length returned should be the
subpage size, however the page size was being returned.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
06 Feb, 2007
1 commit
-
OneNAND can write oob to successive pages, but NAND
does not do that. For compatibility, disallow OneNAND
from writing past the end of the page.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
05 Feb, 2007
2 commits
-
Noticed by Ingo.
Signed-off-by: David Woodhouse
02 Feb, 2007
3 commits
-
In previos patch, there's typo so fix it
Remove unnecessary goto statementSigned-off-by: Kyungmin Park
-
It use blockpage instead of a pair (block, page). It can also cover a small chunk access. 0x00, 0x20, 0x40 and so on.
And in JFFS2 behavior, sometimes it reads two pages alternatively.
e.g., It first reads A page, B page and A page.
So we check another bufferram to find requested page.Signed-off-by: Kyungmin Park
-
- Iterations of the patch to add oob auto-placement support to OneNAND left a line of code that was meant to have been deleted.
- read mtd->oobsize in onenand_transfer_auto_oob to optimized memcpySigned-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
01 Feb, 2007
2 commits
-
Enable the use of oob operation mode MTD_OOB_AUTO with OneNAND.
Note that MTD_OOB_RAW is still not supported.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park -
Going over the bugs and warnings I found this one left over. The other
changes have already been correctly done for this driver but the actual
switch to pci_get_device that they assume has not.Signed-off-by: Alan Cox
Signed-off-by: David Woodhouse