mtd: kill the ecclayout->oobavail field
ecclayout->oobavail is just redundant with the mtd->oobavail field. Moreover, it prevents static const definition of ecc layouts since the NAND framework is calculating this value based on the ecclayout->oobfree field. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:

committed by
Brian Norris

parent
9ebfdf5b18
commit
f5b8aa78ef
@@ -215,19 +215,19 @@ static int verify_eraseblock(int ebnum)
|
||||
pr_info("ignoring error as within bitflip_limit\n");
|
||||
}
|
||||
|
||||
if (use_offset != 0 || use_len < mtd->ecclayout->oobavail) {
|
||||
if (use_offset != 0 || use_len < mtd->oobavail) {
|
||||
int k;
|
||||
|
||||
ops.mode = MTD_OPS_AUTO_OOB;
|
||||
ops.len = 0;
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = mtd->ecclayout->oobavail;
|
||||
ops.ooblen = mtd->oobavail;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = 0;
|
||||
ops.datbuf = NULL;
|
||||
ops.oobbuf = readbuf;
|
||||
err = mtd_read_oob(mtd, addr, &ops);
|
||||
if (err || ops.oobretlen != mtd->ecclayout->oobavail) {
|
||||
if (err || ops.oobretlen != mtd->oobavail) {
|
||||
pr_err("error: readoob failed at %#llx\n",
|
||||
(long long)addr);
|
||||
errcnt += 1;
|
||||
@@ -244,7 +244,7 @@ static int verify_eraseblock(int ebnum)
|
||||
/* verify post-(use_offset + use_len) area for 0xff */
|
||||
k = use_offset + use_len;
|
||||
bitflips += memffshow(addr, k, readbuf + k,
|
||||
mtd->ecclayout->oobavail - k);
|
||||
mtd->oobavail - k);
|
||||
|
||||
if (bitflips > bitflip_limit) {
|
||||
pr_err("error: verify failed at %#llx\n",
|
||||
@@ -269,8 +269,8 @@ static int verify_eraseblock_in_one_go(int ebnum)
|
||||
struct mtd_oob_ops ops;
|
||||
int err = 0;
|
||||
loff_t addr = (loff_t)ebnum * mtd->erasesize;
|
||||
size_t len = mtd->ecclayout->oobavail * pgcnt;
|
||||
size_t oobavail = mtd->ecclayout->oobavail;
|
||||
size_t len = mtd->oobavail * pgcnt;
|
||||
size_t oobavail = mtd->oobavail;
|
||||
size_t bitflips;
|
||||
int i;
|
||||
|
||||
@@ -394,8 +394,8 @@ static int __init mtd_oobtest_init(void)
|
||||
goto out;
|
||||
|
||||
use_offset = 0;
|
||||
use_len = mtd->ecclayout->oobavail;
|
||||
use_len_max = mtd->ecclayout->oobavail;
|
||||
use_len = mtd->oobavail;
|
||||
use_len_max = mtd->oobavail;
|
||||
vary_offset = 0;
|
||||
|
||||
/* First test: write all OOB, read it back and verify */
|
||||
@@ -460,8 +460,8 @@ static int __init mtd_oobtest_init(void)
|
||||
|
||||
/* Write all eraseblocks */
|
||||
use_offset = 0;
|
||||
use_len = mtd->ecclayout->oobavail;
|
||||
use_len_max = mtd->ecclayout->oobavail;
|
||||
use_len = mtd->oobavail;
|
||||
use_len_max = mtd->oobavail;
|
||||
vary_offset = 1;
|
||||
prandom_seed_state(&rnd_state, 5);
|
||||
|
||||
@@ -471,8 +471,8 @@ static int __init mtd_oobtest_init(void)
|
||||
|
||||
/* Check all eraseblocks */
|
||||
use_offset = 0;
|
||||
use_len = mtd->ecclayout->oobavail;
|
||||
use_len_max = mtd->ecclayout->oobavail;
|
||||
use_len = mtd->oobavail;
|
||||
use_len_max = mtd->oobavail;
|
||||
vary_offset = 1;
|
||||
prandom_seed_state(&rnd_state, 5);
|
||||
err = verify_all_eraseblocks();
|
||||
@@ -480,8 +480,8 @@ static int __init mtd_oobtest_init(void)
|
||||
goto out;
|
||||
|
||||
use_offset = 0;
|
||||
use_len = mtd->ecclayout->oobavail;
|
||||
use_len_max = mtd->ecclayout->oobavail;
|
||||
use_len = mtd->oobavail;
|
||||
use_len_max = mtd->oobavail;
|
||||
vary_offset = 0;
|
||||
|
||||
/* Fourth test: try to write off end of device */
|
||||
@@ -501,7 +501,7 @@ static int __init mtd_oobtest_init(void)
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = 1;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = mtd->ecclayout->oobavail;
|
||||
ops.ooboffs = mtd->oobavail;
|
||||
ops.datbuf = NULL;
|
||||
ops.oobbuf = writebuf;
|
||||
pr_info("attempting to start write past end of OOB\n");
|
||||
@@ -521,7 +521,7 @@ static int __init mtd_oobtest_init(void)
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = 1;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = mtd->ecclayout->oobavail;
|
||||
ops.ooboffs = mtd->oobavail;
|
||||
ops.datbuf = NULL;
|
||||
ops.oobbuf = readbuf;
|
||||
pr_info("attempting to start read past end of OOB\n");
|
||||
@@ -543,7 +543,7 @@ static int __init mtd_oobtest_init(void)
|
||||
ops.mode = MTD_OPS_AUTO_OOB;
|
||||
ops.len = 0;
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = mtd->ecclayout->oobavail + 1;
|
||||
ops.ooblen = mtd->oobavail + 1;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = 0;
|
||||
ops.datbuf = NULL;
|
||||
@@ -563,7 +563,7 @@ static int __init mtd_oobtest_init(void)
|
||||
ops.mode = MTD_OPS_AUTO_OOB;
|
||||
ops.len = 0;
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = mtd->ecclayout->oobavail + 1;
|
||||
ops.ooblen = mtd->oobavail + 1;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = 0;
|
||||
ops.datbuf = NULL;
|
||||
@@ -587,7 +587,7 @@ static int __init mtd_oobtest_init(void)
|
||||
ops.mode = MTD_OPS_AUTO_OOB;
|
||||
ops.len = 0;
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = mtd->ecclayout->oobavail;
|
||||
ops.ooblen = mtd->oobavail;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = 1;
|
||||
ops.datbuf = NULL;
|
||||
@@ -607,7 +607,7 @@ static int __init mtd_oobtest_init(void)
|
||||
ops.mode = MTD_OPS_AUTO_OOB;
|
||||
ops.len = 0;
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = mtd->ecclayout->oobavail;
|
||||
ops.ooblen = mtd->oobavail;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = 1;
|
||||
ops.datbuf = NULL;
|
||||
@@ -638,7 +638,7 @@ static int __init mtd_oobtest_init(void)
|
||||
for (i = 0; i < ebcnt - 1; ++i) {
|
||||
int cnt = 2;
|
||||
int pg;
|
||||
size_t sz = mtd->ecclayout->oobavail;
|
||||
size_t sz = mtd->oobavail;
|
||||
if (bbt[i] || bbt[i + 1])
|
||||
continue;
|
||||
addr = (loff_t)(i + 1) * mtd->erasesize - mtd->writesize;
|
||||
@@ -673,13 +673,12 @@ static int __init mtd_oobtest_init(void)
|
||||
for (i = 0; i < ebcnt - 1; ++i) {
|
||||
if (bbt[i] || bbt[i + 1])
|
||||
continue;
|
||||
prandom_bytes_state(&rnd_state, writebuf,
|
||||
mtd->ecclayout->oobavail * 2);
|
||||
prandom_bytes_state(&rnd_state, writebuf, mtd->oobavail * 2);
|
||||
addr = (loff_t)(i + 1) * mtd->erasesize - mtd->writesize;
|
||||
ops.mode = MTD_OPS_AUTO_OOB;
|
||||
ops.len = 0;
|
||||
ops.retlen = 0;
|
||||
ops.ooblen = mtd->ecclayout->oobavail * 2;
|
||||
ops.ooblen = mtd->oobavail * 2;
|
||||
ops.oobretlen = 0;
|
||||
ops.ooboffs = 0;
|
||||
ops.datbuf = NULL;
|
||||
@@ -688,7 +687,7 @@ static int __init mtd_oobtest_init(void)
|
||||
if (err)
|
||||
goto out;
|
||||
if (memcmpshow(addr, readbuf, writebuf,
|
||||
mtd->ecclayout->oobavail * 2)) {
|
||||
mtd->oobavail * 2)) {
|
||||
pr_err("error: verify failed at %#llx\n",
|
||||
(long long)addr);
|
||||
errcnt += 1;
|
||||
|
Reference in New Issue
Block a user