nand: cleanup whitespace

Bring up to date with corresponding file from linux.

Signed-off-by: Christian Hitz <christian.hitz@aizo.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
This commit is contained in:
Christian Hitz 2011-10-12 09:32:01 +02:00 committed by Scott Wood
parent 8c2d9c6862
commit 90e3f395bf
1 changed files with 78 additions and 74 deletions

View File

@ -71,7 +71,7 @@ static struct nand_ecclayout nand_oob_8 = {
{.offset = 3, {.offset = 3,
.length = 2}, .length = 2},
{.offset = 6, {.offset = 6,
.length = 2}} .length = 2} }
}; };
static struct nand_ecclayout nand_oob_16 = { static struct nand_ecclayout nand_oob_16 = {
@ -79,7 +79,7 @@ static struct nand_ecclayout nand_oob_16 = {
.eccpos = {0, 1, 2, 3, 6, 7}, .eccpos = {0, 1, 2, 3, 6, 7},
.oobfree = { .oobfree = {
{.offset = 8, {.offset = 8,
. length = 8}} . length = 8} }
}; };
static struct nand_ecclayout nand_oob_64 = { static struct nand_ecclayout nand_oob_64 = {
@ -90,24 +90,23 @@ static struct nand_ecclayout nand_oob_64 = {
56, 57, 58, 59, 60, 61, 62, 63}, 56, 57, 58, 59, 60, 61, 62, 63},
.oobfree = { .oobfree = {
{.offset = 2, {.offset = 2,
.length = 38}} .length = 38} }
}; };
static struct nand_ecclayout nand_oob_128 = { static struct nand_ecclayout nand_oob_128 = {
.eccbytes = 48, .eccbytes = 48,
.eccpos = { .eccpos = {
80, 81, 82, 83, 84, 85, 86, 87, 80, 81, 82, 83, 84, 85, 86, 87,
88, 89, 90, 91, 92, 93, 94, 95, 88, 89, 90, 91, 92, 93, 94, 95,
96, 97, 98, 99, 100, 101, 102, 103, 96, 97, 98, 99, 100, 101, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 104, 105, 106, 107, 108, 109, 110, 111,
112, 113, 114, 115, 116, 117, 118, 119, 112, 113, 114, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127}, 120, 121, 122, 123, 124, 125, 126, 127},
.oobfree = { .oobfree = {
{.offset = 2, {.offset = 2,
.length = 78}} .length = 78} }
}; };
static int nand_get_device(struct nand_chip *chip, struct mtd_info *mtd, static int nand_get_device(struct nand_chip *chip, struct mtd_info *mtd,
int new_state); int new_state);
@ -122,7 +121,7 @@ static int nand_wait(struct mtd_info *mtd, struct nand_chip *this);
* *
* Deselect, release chip lock and wake up anyone waiting on the device * Deselect, release chip lock and wake up anyone waiting on the device
*/ */
static void nand_release_device (struct mtd_info *mtd) static void nand_release_device(struct mtd_info *mtd)
{ {
struct nand_chip *this = mtd->priv; struct nand_chip *this = mtd->priv;
this->select_chip(mtd, -1); /* De-select the NAND device */ this->select_chip(mtd, -1); /* De-select the NAND device */
@ -769,8 +768,9 @@ static int nand_read_page_raw(struct mtd_info *mtd, struct nand_chip *chip,
* *
* We need a special oob layout and handling even when OOB isn't used. * We need a special oob layout and handling even when OOB isn't used.
*/ */
static int nand_read_page_raw_syndrome(struct mtd_info *mtd, struct nand_chip *chip, static int nand_read_page_raw_syndrome(struct mtd_info *mtd,
uint8_t *buf, int page) struct nand_chip *chip,
uint8_t *buf, int page)
{ {
int eccsize = chip->ecc.size; int eccsize = chip->ecc.size;
int eccbytes = chip->ecc.bytes; int eccbytes = chip->ecc.bytes;
@ -851,7 +851,8 @@ static int nand_read_page_swecc(struct mtd_info *mtd, struct nand_chip *chip,
* @readlen: data length * @readlen: data length
* @bufpoi: buffer to store read data * @bufpoi: buffer to store read data
*/ */
static int nand_read_subpage(struct mtd_info *mtd, struct nand_chip *chip, uint32_t data_offs, uint32_t readlen, uint8_t *bufpoi) static int nand_read_subpage(struct mtd_info *mtd, struct nand_chip *chip,
uint32_t data_offs, uint32_t readlen, uint8_t *bufpoi)
{ {
int start_step, end_step, num_steps; int start_step, end_step, num_steps;
uint32_t *eccpos = chip->ecc.layout->eccpos; uint32_t *eccpos = chip->ecc.layout->eccpos;
@ -1083,7 +1084,7 @@ static int nand_read_page_syndrome(struct mtd_info *mtd, struct nand_chip *chip,
static uint8_t *nand_transfer_oob(struct nand_chip *chip, uint8_t *oob, static uint8_t *nand_transfer_oob(struct nand_chip *chip, uint8_t *oob,
struct mtd_oob_ops *ops, size_t len) struct mtd_oob_ops *ops, size_t len)
{ {
switch(ops->mode) { switch (ops->mode) {
case MTD_OOB_PLACE: case MTD_OOB_PLACE:
case MTD_OOB_RAW: case MTD_OOB_RAW:
@ -1095,7 +1096,7 @@ static uint8_t *nand_transfer_oob(struct nand_chip *chip, uint8_t *oob,
uint32_t boffs = 0, roffs = ops->ooboffs; uint32_t boffs = 0, roffs = ops->ooboffs;
size_t bytes = 0; size_t bytes = 0;
for(; free->length && len; free++, len -= bytes) { for (; free->length && len; free++, len -= bytes) {
/* Read request not from offset 0 ? */ /* Read request not from offset 0 ? */
if (unlikely(roffs)) { if (unlikely(roffs)) {
if (roffs >= free->length) { if (roffs >= free->length) {
@ -1156,7 +1157,7 @@ static int nand_do_read_ops(struct mtd_info *mtd, loff_t from,
buf = ops->datbuf; buf = ops->datbuf;
oob = ops->oobbuf; oob = ops->oobbuf;
while(1) { while (1) {
WATCHDOG_RESET(); WATCHDOG_RESET();
bytes = min(mtd->writesize - col, readlen); bytes = min(mtd->writesize - col, readlen);
@ -1174,12 +1175,13 @@ static int nand_do_read_ops(struct mtd_info *mtd, loff_t from,
/* Now read the page into the buffer */ /* Now read the page into the buffer */
if (unlikely(ops->mode == MTD_OOB_RAW)) if (unlikely(ops->mode == MTD_OOB_RAW))
ret = chip->ecc.read_page_raw(mtd, chip, ret = chip->ecc.read_page_raw(mtd, chip,
bufpoi, page); bufpoi, page);
else if (!aligned && NAND_SUBPAGE_READ(chip) && !oob) else if (!aligned && NAND_SUBPAGE_READ(chip) && !oob)
ret = chip->ecc.read_subpage(mtd, chip, col, bytes, bufpoi); ret = chip->ecc.read_subpage(mtd, chip,
col, bytes, bufpoi);
else else
ret = chip->ecc.read_page(mtd, chip, bufpoi, ret = chip->ecc.read_page(mtd, chip, bufpoi,
page); page);
if (ret < 0) if (ret < 0)
break; break;
@ -1260,11 +1262,11 @@ static int nand_do_read_ops(struct mtd_info *mtd, loff_t from,
if (mtd->ecc_stats.failed - stats.failed) if (mtd->ecc_stats.failed - stats.failed)
return -EBADMSG; return -EBADMSG;
return mtd->ecc_stats.corrected - stats.corrected ? -EUCLEAN : 0; return mtd->ecc_stats.corrected - stats.corrected ? -EUCLEAN : 0;
} }
/** /**
* nand_read - [MTD Interface] MTD compability function for nand_do_read_ecc * nand_read - [MTD Interface] MTD compatibility function for nand_do_read_ecc
* @mtd: MTD device structure * @mtd: MTD device structure
* @from: offset to read from * @from: offset to read from
* @len: number of bytes to read * @len: number of bytes to read
@ -1457,8 +1459,8 @@ static int nand_do_read_oob(struct mtd_info *mtd, loff_t from,
int len; int len;
uint8_t *buf = ops->oobbuf; uint8_t *buf = ops->oobbuf;
MTDDEBUG (MTD_DEBUG_LEVEL3, "nand_read_oob: from = 0x%08Lx, len = %i\n", MTDDEBUG(MTD_DEBUG_LEVEL3, "%s: from = 0x%08Lx, len = %i\n",
(unsigned long long)from, readlen); __func__, (unsigned long long)from, readlen);
if (ops->mode == MTD_OOB_AUTO) if (ops->mode == MTD_OOB_AUTO)
len = chip->ecc.layout->oobavail; len = chip->ecc.layout->oobavail;
@ -1466,8 +1468,8 @@ static int nand_do_read_oob(struct mtd_info *mtd, loff_t from,
len = mtd->oobsize; len = mtd->oobsize;
if (unlikely(ops->ooboffs >= len)) { if (unlikely(ops->ooboffs >= len)) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_read_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt to start read "
"Attempt to start read outside oob\n"); "outside oob\n", __func__);
return -EINVAL; return -EINVAL;
} }
@ -1475,8 +1477,8 @@ static int nand_do_read_oob(struct mtd_info *mtd, loff_t from,
if (unlikely(from >= mtd->size || if (unlikely(from >= mtd->size ||
ops->ooboffs + readlen > ((mtd->size >> chip->page_shift) - ops->ooboffs + readlen > ((mtd->size >> chip->page_shift) -
(from >> chip->page_shift)) * len)) { (from >> chip->page_shift)) * len)) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_read_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt read beyond end "
"Attempt read beyond end of device\n"); "of device\n", __func__);
return -EINVAL; return -EINVAL;
} }
@ -1487,7 +1489,7 @@ static int nand_do_read_oob(struct mtd_info *mtd, loff_t from,
realpage = (int)(from >> chip->page_shift); realpage = (int)(from >> chip->page_shift);
page = realpage & chip->pagemask; page = realpage & chip->pagemask;
while(1) { while (1) {
WATCHDOG_RESET(); WATCHDOG_RESET();
sndcmd = chip->ecc.read_oob(mtd, chip, page, sndcmd); sndcmd = chip->ecc.read_oob(mtd, chip, page, sndcmd);
@ -1551,14 +1553,14 @@ static int nand_read_oob(struct mtd_info *mtd, loff_t from,
/* Do not allow reads past end of device */ /* Do not allow reads past end of device */
if (ops->datbuf && (from + ops->len) > mtd->size) { if (ops->datbuf && (from + ops->len) > mtd->size) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_read_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt read "
"Attempt read beyond end of device\n"); "beyond end of device\n", __func__);
return -EINVAL; return -EINVAL;
} }
nand_get_device(chip, mtd, FL_READING); nand_get_device(chip, mtd, FL_READING);
switch(ops->mode) { switch (ops->mode) {
case MTD_OOB_PLACE: case MTD_OOB_PLACE:
case MTD_OOB_AUTO: case MTD_OOB_AUTO:
case MTD_OOB_RAW: case MTD_OOB_RAW:
@ -1573,7 +1575,7 @@ static int nand_read_oob(struct mtd_info *mtd, loff_t from,
else else
ret = nand_do_read_ops(mtd, from, ops); ret = nand_do_read_ops(mtd, from, ops);
out: out:
nand_release_device(mtd); nand_release_device(mtd);
return ret; return ret;
} }
@ -1602,8 +1604,9 @@ static void nand_write_page_raw(struct mtd_info *mtd, struct nand_chip *chip,
* *
* We need a special oob layout and handling even when ECC isn't checked. * We need a special oob layout and handling even when ECC isn't checked.
*/ */
static void nand_write_page_raw_syndrome(struct mtd_info *mtd, struct nand_chip *chip, static void nand_write_page_raw_syndrome(struct mtd_info *mtd,
const uint8_t *buf) struct nand_chip *chip,
const uint8_t *buf)
{ {
int eccsize = chip->ecc.size; int eccsize = chip->ecc.size;
int eccbytes = chip->ecc.bytes; int eccbytes = chip->ecc.bytes;
@ -1797,7 +1800,7 @@ static uint8_t *nand_fill_oob(struct nand_chip *chip, uint8_t *oob,
{ {
size_t len = ops->ooblen; size_t len = ops->ooblen;
switch(ops->mode) { switch (ops->mode) {
case MTD_OOB_PLACE: case MTD_OOB_PLACE:
case MTD_OOB_RAW: case MTD_OOB_RAW:
@ -1809,7 +1812,7 @@ static uint8_t *nand_fill_oob(struct nand_chip *chip, uint8_t *oob,
uint32_t boffs = 0, woffs = ops->ooboffs; uint32_t boffs = 0, woffs = ops->ooboffs;
size_t bytes = 0; size_t bytes = 0;
for(; free->length && len; free++, len -= bytes) { for (; free->length && len; free++, len -= bytes) {
/* Write request not from offset 0 ? */ /* Write request not from offset 0 ? */
if (unlikely(woffs)) { if (unlikely(woffs)) {
if (woffs >= free->length) { if (woffs >= free->length) {
@ -1887,7 +1890,7 @@ static int nand_do_write_ops(struct mtd_info *mtd, loff_t to,
if (likely(!oob)) if (likely(!oob))
memset(chip->oob_poi, 0xff, mtd->oobsize); memset(chip->oob_poi, 0xff, mtd->oobsize);
while(1) { while (1) {
WATCHDOG_RESET(); WATCHDOG_RESET();
int bytes = mtd->writesize; int bytes = mtd->writesize;
@ -1986,8 +1989,8 @@ static int nand_do_write_oob(struct mtd_info *mtd, loff_t to,
int chipnr, page, status, len; int chipnr, page, status, len;
struct nand_chip *chip = mtd->priv; struct nand_chip *chip = mtd->priv;
MTDDEBUG (MTD_DEBUG_LEVEL3, "nand_write_oob: to = 0x%08x, len = %i\n", MTDDEBUG(MTD_DEBUG_LEVEL3, "%s: to = 0x%08x, len = %i\n",
(unsigned int)to, (int)ops->ooblen); __func__, (unsigned int)to, (int)ops->ooblen);
if (ops->mode == MTD_OOB_AUTO) if (ops->mode == MTD_OOB_AUTO)
len = chip->ecc.layout->oobavail; len = chip->ecc.layout->oobavail;
@ -1996,24 +1999,24 @@ static int nand_do_write_oob(struct mtd_info *mtd, loff_t to,
/* Do not allow write past end of page */ /* Do not allow write past end of page */
if ((ops->ooboffs + ops->ooblen) > len) { if ((ops->ooboffs + ops->ooblen) > len) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_write_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt to write "
"Attempt to write past end of page\n"); "past end of page\n", __func__);
return -EINVAL; return -EINVAL;
} }
if (unlikely(ops->ooboffs >= len)) { if (unlikely(ops->ooboffs >= len)) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_read_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt to start "
"Attempt to start write outside oob\n"); "write outside oob\n", __func__);
return -EINVAL; return -EINVAL;
} }
/* Do not allow reads past end of device */ /* Do not allow write past end of device */
if (unlikely(to >= mtd->size || if (unlikely(to >= mtd->size ||
ops->ooboffs + ops->ooblen > ops->ooboffs + ops->ooblen >
((mtd->size >> chip->page_shift) - ((mtd->size >> chip->page_shift) -
(to >> chip->page_shift)) * len)) { (to >> chip->page_shift)) * len)) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_read_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt write beyond "
"Attempt write beyond end of device\n"); "end of device\n", __func__);
return -EINVAL; return -EINVAL;
} }
@ -2068,14 +2071,14 @@ static int nand_write_oob(struct mtd_info *mtd, loff_t to,
/* Do not allow writes past end of device */ /* Do not allow writes past end of device */
if (ops->datbuf && (to + ops->len) > mtd->size) { if (ops->datbuf && (to + ops->len) > mtd->size) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_read_oob: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Attempt write beyond "
"Attempt read beyond end of device\n"); "end of device\n", __func__);
return -EINVAL; return -EINVAL;
} }
nand_get_device(chip, mtd, FL_WRITING); nand_get_device(chip, mtd, FL_WRITING);
switch(ops->mode) { switch (ops->mode) {
case MTD_OOB_PLACE: case MTD_OOB_PLACE:
case MTD_OOB_AUTO: case MTD_OOB_AUTO:
case MTD_OOB_RAW: case MTD_OOB_RAW:
@ -2090,7 +2093,7 @@ static int nand_write_oob(struct mtd_info *mtd, loff_t to,
else else
ret = nand_do_write_ops(mtd, to, ops); ret = nand_do_write_ops(mtd, to, ops);
out: out:
nand_release_device(mtd); nand_release_device(mtd);
return ret; return ret;
} }
@ -2159,9 +2162,9 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
unsigned int bbt_masked_page = 0xffffffff; unsigned int bbt_masked_page = 0xffffffff;
loff_t len; loff_t len;
MTDDEBUG(MTD_DEBUG_LEVEL3, "nand_erase: start = 0x%012llx, " MTDDEBUG(MTD_DEBUG_LEVEL3, "%s: start = 0x%012llx, len = %llu\n",
"len = %llu\n", (unsigned long long) instr->addr, __func__, (unsigned long long)instr->addr,
(unsigned long long) instr->len); (unsigned long long)instr->len);
/* Start address must align on block boundary */ /* Start address must align on block boundary */
if (instr->addr & ((1 << chip->phys_erase_shift) - 1)) { if (instr->addr & ((1 << chip->phys_erase_shift) - 1)) {
@ -2200,8 +2203,8 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
/* Check, if it is write protected */ /* Check, if it is write protected */
if (nand_check_wp(mtd)) { if (nand_check_wp(mtd)) {
MTDDEBUG (MTD_DEBUG_LEVEL0, MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Device is write protected!!!\n",
"nand_erase: Device is write protected!!!\n"); __func__);
instr->state = MTD_ERASE_FAILED; instr->state = MTD_ERASE_FAILED;
goto erase_exit; goto erase_exit;
} }
@ -2227,8 +2230,8 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
*/ */
if (!instr->scrub && nand_block_checkbad(mtd, ((loff_t) page) << if (!instr->scrub && nand_block_checkbad(mtd, ((loff_t) page) <<
chip->page_shift, 0, allowbbt)) { chip->page_shift, 0, allowbbt)) {
printk(KERN_WARNING "nand_erase: attempt to erase a " printk(KERN_WARNING "%s: attempt to erase a bad block "
"bad block at page 0x%08x\n", page); "at page 0x%08x\n", __func__, page);
instr->state = MTD_ERASE_FAILED; instr->state = MTD_ERASE_FAILED;
goto erase_exit; goto erase_exit;
} }
@ -2255,10 +2258,11 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
/* See if block erase succeeded */ /* See if block erase succeeded */
if (status & NAND_STATUS_FAIL) { if (status & NAND_STATUS_FAIL) {
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_erase: " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: Failed erase, "
"Failed erase, page 0x%08x\n", page); "page 0x%08x\n", __func__, page);
instr->state = MTD_ERASE_FAILED; instr->state = MTD_ERASE_FAILED;
instr->fail_addr = ((loff_t)page << chip->page_shift); instr->fail_addr =
((loff_t)page << chip->page_shift);
goto erase_exit; goto erase_exit;
} }
@ -2293,7 +2297,7 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
} }
instr->state = MTD_ERASE_DONE; instr->state = MTD_ERASE_DONE;
erase_exit: erase_exit:
ret = instr->state == MTD_ERASE_DONE ? 0 : -EIO; ret = instr->state == MTD_ERASE_DONE ? 0 : -EIO;
@ -2315,9 +2319,9 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
if (!rewrite_bbt[chipnr]) if (!rewrite_bbt[chipnr])
continue; continue;
/* update the BBT for chip */ /* update the BBT for chip */
MTDDEBUG (MTD_DEBUG_LEVEL0, "nand_erase_nand: nand_update_bbt " MTDDEBUG(MTD_DEBUG_LEVEL0, "%s: nand_update_bbt "
"(%d:0x%0llx 0x%0x)\n", chipnr, rewrite_bbt[chipnr], "(%d:0x%0llx 0x%0x)\n", __func__, chipnr,
chip->bbt_td->pages[chipnr]); rewrite_bbt[chipnr], chip->bbt_td->pages[chipnr]);
nand_update_bbt(mtd, rewrite_bbt[chipnr]); nand_update_bbt(mtd, rewrite_bbt[chipnr]);
} }
@ -2335,7 +2339,7 @@ static void nand_sync(struct mtd_info *mtd)
{ {
struct nand_chip *chip = mtd->priv; struct nand_chip *chip = mtd->priv;
MTDDEBUG (MTD_DEBUG_LEVEL3, "nand_sync: called\n"); MTDDEBUG(MTD_DEBUG_LEVEL3, "%s: called\n", __func__);
/* Grab the lock and see if the device is available */ /* Grab the lock and see if the device is available */
nand_get_device(chip, mtd, FL_SYNCING); nand_get_device(chip, mtd, FL_SYNCING);
@ -2433,8 +2437,7 @@ static u16 onfi_crc16(u16 crc, u8 const *p, size_t len)
/* /*
* Check if the NAND chip is ONFI compliant, returns 1 if it is, 0 otherwise * Check if the NAND chip is ONFI compliant, returns 1 if it is, 0 otherwise
*/ */
static int nand_flash_detect_onfi(struct mtd_info *mtd, static int nand_flash_detect_onfi(struct mtd_info *mtd, struct nand_chip *chip,
struct nand_chip *chip,
int *busw) int *busw)
{ {
struct nand_onfi_params *p = &chip->onfi_params; struct nand_onfi_params *p = &chip->onfi_params;
@ -2451,7 +2454,7 @@ static int nand_flash_detect_onfi(struct mtd_info *mtd,
for (i = 0; i < 3; i++) { for (i = 0; i < 3; i++) {
chip->read_buf(mtd, (uint8_t *)p, sizeof(*p)); chip->read_buf(mtd, (uint8_t *)p, sizeof(*p));
if (onfi_crc16(ONFI_CRC_BASE, (uint8_t *)p, 254) == if (onfi_crc16(ONFI_CRC_BASE, (uint8_t *)p, 254) ==
le16_to_cpu(p->crc)) { le16_to_cpu(p->crc)) {
printk(KERN_INFO "ONFI param page %d valid\n", i); printk(KERN_INFO "ONFI param page %d valid\n", i);
break; break;
} }
@ -2476,8 +2479,8 @@ static int nand_flash_detect_onfi(struct mtd_info *mtd,
chip->onfi_version = 0; chip->onfi_version = 0;
if (!chip->onfi_version) { if (!chip->onfi_version) {
printk(KERN_INFO "%s: unsupported ONFI " printk(KERN_INFO "%s: unsupported ONFI version: %d\n",
"version: %d\n", __func__, val); __func__, val);
return 0; return 0;
} }
@ -2705,7 +2708,8 @@ int nand_scan_ident(struct mtd_info *mtd, int maxchips,
nand_set_defaults(chip, busw); nand_set_defaults(chip, busw);
/* Read the flash type */ /* Read the flash type */
type = nand_get_flash_type(mtd, chip, busw, &nand_maf_id, &nand_dev_id, table); type = nand_get_flash_type(mtd, chip, busw,
&nand_maf_id, &nand_dev_id, table);
if (IS_ERR(type)) { if (IS_ERR(type)) {
#ifndef CONFIG_SYS_NAND_QUIET_TEST #ifndef CONFIG_SYS_NAND_QUIET_TEST
@ -2797,7 +2801,7 @@ int nand_scan_tail(struct mtd_info *mtd)
/* Similar to NAND_ECC_HW, but a separate read_page handle */ /* Similar to NAND_ECC_HW, but a separate read_page handle */
if (!chip->ecc.calculate || !chip->ecc.correct || if (!chip->ecc.calculate || !chip->ecc.correct ||
!chip->ecc.hwctl) { !chip->ecc.hwctl) {
printk(KERN_WARNING "No ECC functions supplied, " printk(KERN_WARNING "No ECC functions supplied; "
"Hardware ECC not possible\n"); "Hardware ECC not possible\n");
BUG(); BUG();
} }
@ -2826,7 +2830,7 @@ int nand_scan_tail(struct mtd_info *mtd)
chip->ecc.read_page == nand_read_page_hwecc || chip->ecc.read_page == nand_read_page_hwecc ||
!chip->ecc.write_page || !chip->ecc.write_page ||
chip->ecc.write_page == nand_write_page_hwecc)) { chip->ecc.write_page == nand_write_page_hwecc)) {
printk(KERN_WARNING "No ECC functions supplied, " printk(KERN_WARNING "No ECC functions supplied; "
"Hardware ECC not possible\n"); "Hardware ECC not possible\n");
BUG(); BUG();
} }
@ -2933,7 +2937,7 @@ int nand_scan_tail(struct mtd_info *mtd)
* mode * mode
*/ */
chip->ecc.steps = mtd->writesize / chip->ecc.size; chip->ecc.steps = mtd->writesize / chip->ecc.size;
if(chip->ecc.steps * chip->ecc.size != mtd->writesize) { if (chip->ecc.steps * chip->ecc.size != mtd->writesize) {
printk(KERN_WARNING "Invalid ecc parameters\n"); printk(KERN_WARNING "Invalid ecc parameters\n");
BUG(); BUG();
} }
@ -2945,7 +2949,7 @@ int nand_scan_tail(struct mtd_info *mtd)
*/ */
if (!(chip->options & NAND_NO_SUBPAGE_WRITE) && if (!(chip->options & NAND_NO_SUBPAGE_WRITE) &&
!(chip->cellinfo & NAND_CI_CELLTYPE_MSK)) { !(chip->cellinfo & NAND_CI_CELLTYPE_MSK)) {
switch(chip->ecc.steps) { switch (chip->ecc.steps) {
case 2: case 2:
mtd->subpage_sft = 1; mtd->subpage_sft = 1;
break; break;