[MTD] NAND: Clean up trailing white spaces
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:

committed by
Thomas Gleixner

parent
e5580fbe8a
commit
61b03bd7c3
@@ -1,4 +1,4 @@
|
||||
/*
|
||||
/*
|
||||
* drivers/mtd/nand/diskonchip.c
|
||||
*
|
||||
* (C) 2003 Red Hat, Inc.
|
||||
@@ -8,15 +8,15 @@
|
||||
* Author: David Woodhouse <dwmw2@infradead.org>
|
||||
* Additional Diskonchip 2000 and Millennium support by Dan Brown <dan_brown@ieee.org>
|
||||
* Diskonchip Millennium Plus support by Kalev Lember <kalev@smartlink.ee>
|
||||
*
|
||||
*
|
||||
* Error correction code lifted from the old docecc code
|
||||
* Author: Fabrice Bellard (fabrice.bellard@netgem.com)
|
||||
* Author: Fabrice Bellard (fabrice.bellard@netgem.com)
|
||||
* Copyright (C) 2000 Netgem S.A.
|
||||
* converted to the generic Reed-Solomon library by Thomas Gleixner <tglx@linutronix.de>
|
||||
*
|
||||
*
|
||||
* Interface to generic NAND code for M-Systems DiskOnChip devices
|
||||
*
|
||||
* $Id: diskonchip.c,v 1.54 2005/04/07 14:22:55 dbrown Exp $
|
||||
* $Id: diskonchip.c,v 1.55 2005/11/07 11:14:30 gleixner Exp $
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
@@ -42,16 +42,16 @@
|
||||
static unsigned long __initdata doc_locations[] = {
|
||||
#if defined (__alpha__) || defined(__i386__) || defined(__x86_64__)
|
||||
#ifdef CONFIG_MTD_NAND_DISKONCHIP_PROBE_HIGH
|
||||
0xfffc8000, 0xfffca000, 0xfffcc000, 0xfffce000,
|
||||
0xfffc8000, 0xfffca000, 0xfffcc000, 0xfffce000,
|
||||
0xfffd0000, 0xfffd2000, 0xfffd4000, 0xfffd6000,
|
||||
0xfffd8000, 0xfffda000, 0xfffdc000, 0xfffde000,
|
||||
0xfffe0000, 0xfffe2000, 0xfffe4000, 0xfffe6000,
|
||||
0xfffd8000, 0xfffda000, 0xfffdc000, 0xfffde000,
|
||||
0xfffe0000, 0xfffe2000, 0xfffe4000, 0xfffe6000,
|
||||
0xfffe8000, 0xfffea000, 0xfffec000, 0xfffee000,
|
||||
#else /* CONFIG_MTD_DOCPROBE_HIGH */
|
||||
0xc8000, 0xca000, 0xcc000, 0xce000,
|
||||
0xc8000, 0xca000, 0xcc000, 0xce000,
|
||||
0xd0000, 0xd2000, 0xd4000, 0xd6000,
|
||||
0xd8000, 0xda000, 0xdc000, 0xde000,
|
||||
0xe0000, 0xe2000, 0xe4000, 0xe6000,
|
||||
0xd8000, 0xda000, 0xdc000, 0xde000,
|
||||
0xe0000, 0xe2000, 0xe4000, 0xe6000,
|
||||
0xe8000, 0xea000, 0xec000, 0xee000,
|
||||
#endif /* CONFIG_MTD_DOCPROBE_HIGH */
|
||||
#elif defined(__PPC__)
|
||||
@@ -138,7 +138,7 @@ MODULE_PARM_DESC(doc_config_location, "Physical memory address at which to probe
|
||||
/* the Reed Solomon control structure */
|
||||
static struct rs_control *rs_decoder;
|
||||
|
||||
/*
|
||||
/*
|
||||
* The HW decoder in the DoC ASIC's provides us a error syndrome,
|
||||
* which we must convert to a standard syndrom usable by the generic
|
||||
* Reed-Solomon library code.
|
||||
@@ -163,8 +163,8 @@ static int doc_ecc_decode (struct rs_control *rs, uint8_t *data, uint8_t *ecc)
|
||||
/* Initialize the syndrom buffer */
|
||||
for (i = 0; i < NROOTS; i++)
|
||||
s[i] = ds[0];
|
||||
/*
|
||||
* Evaluate
|
||||
/*
|
||||
* Evaluate
|
||||
* s[i] = ds[3]x^3 + ds[2]x^2 + ds[1]x^1 + ds[0]
|
||||
* where x = alpha^(FCR + i)
|
||||
*/
|
||||
@@ -188,7 +188,7 @@ static int doc_ecc_decode (struct rs_control *rs, uint8_t *data, uint8_t *ecc)
|
||||
if (nerr < 0)
|
||||
return nerr;
|
||||
|
||||
/*
|
||||
/*
|
||||
* Correct the errors. The bitpositions are a bit of magic,
|
||||
* but they are given by the design of the de/encoder circuit
|
||||
* in the DoC ASIC's.
|
||||
@@ -205,7 +205,7 @@ static int doc_ecc_decode (struct rs_control *rs, uint8_t *data, uint8_t *ecc)
|
||||
can be modified since pos is even */
|
||||
index = (pos >> 3) ^ 1;
|
||||
bitpos = pos & 7;
|
||||
if ((index >= 0 && index < SECTOR_SIZE) ||
|
||||
if ((index >= 0 && index < SECTOR_SIZE) ||
|
||||
index == (SECTOR_SIZE + 1)) {
|
||||
val = (uint8_t) (errval[i] >> (2 + bitpos));
|
||||
parity ^= val;
|
||||
@@ -216,7 +216,7 @@ static int doc_ecc_decode (struct rs_control *rs, uint8_t *data, uint8_t *ecc)
|
||||
bitpos = (bitpos + 10) & 7;
|
||||
if (bitpos == 0)
|
||||
bitpos = 8;
|
||||
if ((index >= 0 && index < SECTOR_SIZE) ||
|
||||
if ((index >= 0 && index < SECTOR_SIZE) ||
|
||||
index == (SECTOR_SIZE + 1)) {
|
||||
val = (uint8_t)(errval[i] << (8 - bitpos));
|
||||
parity ^= val;
|
||||
@@ -233,7 +233,7 @@ static void DoC_Delay(struct doc_priv *doc, unsigned short cycles)
|
||||
{
|
||||
volatile char dummy;
|
||||
int i;
|
||||
|
||||
|
||||
for (i = 0; i < cycles; i++) {
|
||||
if (DoC_is_Millennium(doc))
|
||||
dummy = ReadDOC(doc->virtadr, NOP);
|
||||
@@ -242,7 +242,7 @@ static void DoC_Delay(struct doc_priv *doc, unsigned short cycles)
|
||||
else
|
||||
dummy = ReadDOC(doc->virtadr, DOCStatus);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
#define CDSN_CTRL_FR_B_MASK (CDSN_CTRL_FR_B0 | CDSN_CTRL_FR_B1)
|
||||
@@ -327,7 +327,7 @@ static u_char doc2000_read_byte(struct mtd_info *mtd)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void doc2000_writebuf(struct mtd_info *mtd,
|
||||
static void doc2000_writebuf(struct mtd_info *mtd,
|
||||
const u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -343,7 +343,7 @@ static void doc2000_writebuf(struct mtd_info *mtd,
|
||||
if (debug) printk("\n");
|
||||
}
|
||||
|
||||
static void doc2000_readbuf(struct mtd_info *mtd,
|
||||
static void doc2000_readbuf(struct mtd_info *mtd,
|
||||
u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -358,7 +358,7 @@ static void doc2000_readbuf(struct mtd_info *mtd,
|
||||
}
|
||||
}
|
||||
|
||||
static void doc2000_readbuf_dword(struct mtd_info *mtd,
|
||||
static void doc2000_readbuf_dword(struct mtd_info *mtd,
|
||||
u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -379,7 +379,7 @@ static void doc2000_readbuf_dword(struct mtd_info *mtd,
|
||||
}
|
||||
}
|
||||
|
||||
static int doc2000_verifybuf(struct mtd_info *mtd,
|
||||
static int doc2000_verifybuf(struct mtd_info *mtd,
|
||||
const u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -406,12 +406,12 @@ static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr)
|
||||
doc200x_hwcontrol(mtd, NAND_CTL_SETALE);
|
||||
this->write_byte(mtd, 0);
|
||||
doc200x_hwcontrol(mtd, NAND_CTL_CLRALE);
|
||||
|
||||
|
||||
/* We cant' use dev_ready here, but at least we wait for the
|
||||
* command to complete
|
||||
* command to complete
|
||||
*/
|
||||
udelay(50);
|
||||
|
||||
|
||||
ret = this->read_byte(mtd) << 8;
|
||||
ret |= this->read_byte(mtd);
|
||||
|
||||
@@ -438,7 +438,7 @@ static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr)
|
||||
this->read_buf = &doc2000_readbuf_dword;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -469,7 +469,7 @@ static int doc200x_wait(struct mtd_info *mtd, struct nand_chip *this, int state)
|
||||
struct doc_priv *doc = this->priv;
|
||||
|
||||
int status;
|
||||
|
||||
|
||||
DoC_WaitReady(doc);
|
||||
this->cmdfunc(mtd, NAND_CMD_STATUS, -1, -1);
|
||||
DoC_WaitReady(doc);
|
||||
@@ -503,7 +503,7 @@ static u_char doc2001_read_byte(struct mtd_info *mtd)
|
||||
return ReadDOC(docptr, LastDataRead);
|
||||
}
|
||||
|
||||
static void doc2001_writebuf(struct mtd_info *mtd,
|
||||
static void doc2001_writebuf(struct mtd_info *mtd,
|
||||
const u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -517,7 +517,7 @@ static void doc2001_writebuf(struct mtd_info *mtd,
|
||||
WriteDOC(0x00, docptr, WritePipeTerm);
|
||||
}
|
||||
|
||||
static void doc2001_readbuf(struct mtd_info *mtd,
|
||||
static void doc2001_readbuf(struct mtd_info *mtd,
|
||||
u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -535,7 +535,7 @@ static void doc2001_readbuf(struct mtd_info *mtd,
|
||||
buf[i] = ReadDOC(docptr, LastDataRead);
|
||||
}
|
||||
|
||||
static int doc2001_verifybuf(struct mtd_info *mtd,
|
||||
static int doc2001_verifybuf(struct mtd_info *mtd,
|
||||
const u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -570,7 +570,7 @@ static u_char doc2001plus_read_byte(struct mtd_info *mtd)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void doc2001plus_writebuf(struct mtd_info *mtd,
|
||||
static void doc2001plus_writebuf(struct mtd_info *mtd,
|
||||
const u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -587,7 +587,7 @@ static void doc2001plus_writebuf(struct mtd_info *mtd,
|
||||
if (debug) printk("\n");
|
||||
}
|
||||
|
||||
static void doc2001plus_readbuf(struct mtd_info *mtd,
|
||||
static void doc2001plus_readbuf(struct mtd_info *mtd,
|
||||
u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -617,7 +617,7 @@ static void doc2001plus_readbuf(struct mtd_info *mtd,
|
||||
if (debug) printk("\n");
|
||||
}
|
||||
|
||||
static int doc2001plus_verifybuf(struct mtd_info *mtd,
|
||||
static int doc2001plus_verifybuf(struct mtd_info *mtd,
|
||||
const u_char *buf, int len)
|
||||
{
|
||||
struct nand_chip *this = mtd->priv;
|
||||
@@ -797,7 +797,7 @@ static void doc2001plus_command (struct mtd_info *mtd, unsigned command, int col
|
||||
WriteDOC(0, docptr, Mplus_FlashControl);
|
||||
}
|
||||
|
||||
/*
|
||||
/*
|
||||
* program and erase have their own busy handlers
|
||||
* status and sequential in needs no delay
|
||||
*/
|
||||
@@ -822,7 +822,7 @@ static void doc2001plus_command (struct mtd_info *mtd, unsigned command, int col
|
||||
|
||||
/* This applies to read commands */
|
||||
default:
|
||||
/*
|
||||
/*
|
||||
* If we don't have access to the busy pin, we apply the given
|
||||
* command delay
|
||||
*/
|
||||
@@ -945,7 +945,7 @@ static int doc200x_calculate_ecc(struct mtd_info *mtd, const u_char *dat,
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (DoC_is_MillenniumPlus(doc))
|
||||
ecc_code[i] = ReadDOC_(docptr, DoC_Mplus_ECCSyndrome0 + i);
|
||||
else
|
||||
else
|
||||
ecc_code[i] = ReadDOC_(docptr, DoC_ECCSyndrome0 + i);
|
||||
if (ecc_code[i] != empty_write_ecc[i])
|
||||
emptymatch = 0;
|
||||
@@ -982,7 +982,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat, u_char *read_
|
||||
void __iomem *docptr = doc->virtadr;
|
||||
volatile u_char dummy;
|
||||
int emptymatch = 1;
|
||||
|
||||
|
||||
/* flush the pipeline */
|
||||
if (DoC_is_2000(doc)) {
|
||||
dummy = ReadDOC(docptr, 2k_ECCStatus);
|
||||
@@ -997,7 +997,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat, u_char *read_
|
||||
dummy = ReadDOC(docptr, ECCConf);
|
||||
dummy = ReadDOC(docptr, ECCConf);
|
||||
}
|
||||
|
||||
|
||||
/* Error occured ? */
|
||||
if (dummy & 0x80) {
|
||||
for (i = 0; i < 6; i++) {
|
||||
@@ -1035,7 +1035,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat, u_char *read_
|
||||
if (!emptymatch) ret = doc_ecc_decode (rs_decoder, dat, calc_ecc);
|
||||
if (ret > 0)
|
||||
printk(KERN_ERR "doc200x_correct_data corrected %d errors\n", ret);
|
||||
}
|
||||
}
|
||||
if (DoC_is_MillenniumPlus(doc))
|
||||
WriteDOC(DOC_ECC_DIS, docptr, Mplus_ECCConf);
|
||||
else
|
||||
@@ -1046,7 +1046,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat, u_char *read_
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
//u_char mydatabuf[528];
|
||||
|
||||
/* The strange out-of-order .oobfree list below is a (possibly unneeded)
|
||||
@@ -1065,7 +1065,7 @@ static struct nand_oobinfo doc200x_oobinfo = {
|
||||
.eccpos = {0, 1, 2, 3, 4, 5},
|
||||
.oobfree = { {8, 8}, {6, 2} }
|
||||
};
|
||||
|
||||
|
||||
/* Find the (I)NFTL Media Header, and optionally also the mirror media header.
|
||||
On sucessful return, buf will contain a copy of the media header for
|
||||
further processing. id is the string to scan for, and will presumably be
|
||||
@@ -1251,7 +1251,7 @@ static inline int __init inftl_partscan(struct mtd_info *mtd,
|
||||
mh->BlockMultiplierBits = le32_to_cpu(mh->BlockMultiplierBits);
|
||||
mh->FormatFlags = le32_to_cpu(mh->FormatFlags);
|
||||
mh->PercentUsed = le32_to_cpu(mh->PercentUsed);
|
||||
|
||||
|
||||
printk(KERN_INFO " bootRecordID = %s\n"
|
||||
" NoOfBootImageBlocks = %d\n"
|
||||
" NoOfBinaryPartitions = %d\n"
|
||||
@@ -1468,7 +1468,7 @@ static inline int __init doc2001_init(struct mtd_info *mtd)
|
||||
ReadDOC(doc->virtadr, ChipID);
|
||||
if (ReadDOC(doc->virtadr, ChipID) != DOC_ChipID_DocMil) {
|
||||
/* It's not a Millennium; it's one of the newer
|
||||
DiskOnChip 2000 units with a similar ASIC.
|
||||
DiskOnChip 2000 units with a similar ASIC.
|
||||
Treat it like a Millennium, except that it
|
||||
can have multiple chips. */
|
||||
doc2000_count_chips(mtd);
|
||||
@@ -1530,20 +1530,20 @@ static inline int __init doc_probe(unsigned long physadr)
|
||||
* to the DOCControl register. So we store the current contents
|
||||
* of the DOCControl register's location, in case we later decide
|
||||
* that it's not a DiskOnChip, and want to put it back how we
|
||||
* found it.
|
||||
* found it.
|
||||
*/
|
||||
save_control = ReadDOC(virtadr, DOCControl);
|
||||
|
||||
/* Reset the DiskOnChip ASIC */
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_RESET,
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_RESET,
|
||||
virtadr, DOCControl);
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_RESET,
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_RESET,
|
||||
virtadr, DOCControl);
|
||||
|
||||
/* Enable the DiskOnChip ASIC */
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_NORMAL,
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_NORMAL,
|
||||
virtadr, DOCControl);
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_NORMAL,
|
||||
WriteDOC(DOC_MODE_CLR_ERR | DOC_MODE_MDWREN | DOC_MODE_NORMAL,
|
||||
virtadr, DOCControl);
|
||||
|
||||
ChipID = ReadDOC(virtadr, ChipID);
|
||||
@@ -1738,7 +1738,7 @@ static int __init init_nanddoc(void)
|
||||
int i, ret = 0;
|
||||
|
||||
/* We could create the decoder on demand, if memory is a concern.
|
||||
* This way we have it handy, if an error happens
|
||||
* This way we have it handy, if an error happens
|
||||
*
|
||||
* Symbolsize is 10 (bits)
|
||||
* Primitve polynomial is x^10+x^3+1
|
||||
|
Reference in New Issue
Block a user