09 May, 2007
1 commit
-
Signed-off-by: Michael Opdenacker
Signed-off-by: Adrian Bunk
25 Apr, 2007
3 commits
-
The JFFS2 requests OOB function from column 0.
But the oobtest in nand-tests doesn't.
So we only exit loop only when column start with 0.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse -
Here it's not the case: all the entries are occupied by
OOB chunks. Therefore, once we get into a loop likefor (free = this->ecclayout->oobfree; free->length; ++free) {
}we might end up scanning past the real oobfree array.
Probably the best way out, as the same thing might happen for common NAND
as well, is to check index against MTD_MAX_OOBFREE_ENTRIES.Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse -
Update Samsung OneNAND official URL.
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse
20 Apr, 2007
1 commit
-
Use menuconfigs instead of menus, so the whole menu can be disabled at once
instead of going through all options.Signed-off-by: Jan Engelhardt
Signed-off-by: Andrew Morton
Signed-off-by: David Woodhouse
09 Mar, 2007
5 commits
-
Classify the page data and oob buffer
and it prevents the memory fragementation (writesize + oobsize)Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse -
When transferring/filling of the oob is finished in OOB_AUTO, we exit the loop
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse -
add Nokia Copyright and a credit
Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse -
Fix typo & wrong comments
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse -
In oob functions, it is used main buffer instead of oob one. So fix it.
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse
08 Mar, 2007
1 commit
-
During the MTD rework the oobavail parameter of mtd_info structure has become
private. This is not quite correct in terms of integrity and logic. If we have
means to write to OOB area, then we'd like to know upfront how many bytes out
of OOB are spare per page to be able to adapt to specific cases.
The patch inlined adds the public oobavail parameter.Signed-off-by: Vitaly Wool
Signed-off-by: David Woodhouse
19 Feb, 2007
1 commit
-
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
09 Feb, 2007
3 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 -
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 -
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
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
1 commit
-
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
31 Jan, 2007
1 commit
-
- Remove unused fields
- Fix typoSigned-off-by: Kyungmin Park
25 Jan, 2007
1 commit
-
When write-verify is enabled (CONFIG_MTD_ONENAND_VERIFY_WRITE),
the data written is read back and compared. The comparison
was being made between dataRAM buffers, but this does not
verify that the data made it to the dataRAM correctly in
the first place. This patch amends write-verify to
compare back to the original buffer. It also now verifies
sub-page writes.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
22 Jan, 2007
2 commits
-
OneNAND records bad block information in the out-of-band area of either the first or second page of a block. Due to a logic error, only the first page was being checked.
Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park -
OneNAND does 2 memory allocations for bad block information.
Only one of them was being freed.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park
18 Jan, 2007
4 commits
-
Update copyrights and code cleanup
Signed-off-by: Kyungmin Park
-
- DDP code clean-up
- Reduce block & bufferram operations in DDPSigned-off-by: Kyungmin Park
-
If OneNAND is operating within specification, all operations should easily be
completed within the 20 millisecond timeout.
This patch faithlessly adds a check for the timeout and returns an error in
that case.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park -
We have to set ONENAND_REG_START_BLOCK_ADDRESS to avoid status error
Signed-off-by: Kyungmin Park
10 Jan, 2007
7 commits
-
The read-while-load method of reading from OneNAND needs to allow
for the change of bufferRAM address at the boundary between the
two chips in a double density (DDP) device.Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park -
we don't need to return ecc error when 1-bit ecc.
We only return error code when 2-bit ecc errorSigned-off-by: Kyungmin Park
-
Read-while-load enables higher performance read operations.
Signed-off-by: Adrian Hunter
Signed-off-by: Kyungmin Park -
Even though there is ECC error. OneNAND driver updates the buffram as valid
Signed-off-by: Kyungmin Park
-
This patch teaches OneNAND to release processor in
read/write/erase cycles and let other processes proceed.
Also, remove buggi touch watchdog call which only hides
the problem instead of solving it.Signed-off-by: Artem Bityutskiy
Signed-off-by: Kyungmin Park -
OneNAND supports up to 4 writes at one NAND page. Add support of this feature.
Signed-off-by: Kyungmin Park
-
Fix onenand_wait error reporting
Signed-off-by: Kyungmin Park
11 Dec, 2006
1 commit
-
There are missing place in recent MTD oob patch
http://git.infradead.org/?p=mtd-2.6.git;a=commitdiff;h=7014568bad55c20b7ee4f439d78c9e875912d51f
Signed-off-by: Kyungmin Park
Signed-off-by: David Woodhouse
30 Nov, 2006
1 commit
-
The newly-added cafe_ecc.c had a lot of it because of the way the lookup
table was auto-generated; clean up the other files too while we're at it.Signed-off-by: David Woodhouse
29 Nov, 2006
1 commit