
4 Jan
2011
4 Jan
'11
11:24 p.m.
On Mon, Dec 27, 2010 at 05:47:05PM -0700, John Rigby wrote:
CC: Scott Wood scootwood@freescale.com
It's "scottwood", not "scootwood".
+static void nand_read_buf(struct mtd_info *mtd, uint8_t *buf, int len) +{
- int i;
- struct nand_chip *chip = mtd->priv;
+#ifndef CONFIG_SYS_NAND_BUSWIDTH_16
- for (i = 0; i < len; i++)
buf[i] = readb(chip->IO_ADDR_R);
+#else
- u16 *p = (u16 *) buf;
- len >>= 1;
- for (i = 0; i < len; i++)
p[i] = readw(chip->IO_ADDR_R);
+#endif +} +#endif
This looks like a duplication of the default read_buf implementations in nand_base.c -- they should go in nand_boot.c with an #ifdef to keep it from increasing the size of any implementation that overrides it.
+#ifndef CONFIG_NAND_SPL /* Default ECC mode */ nand->ecc.mode = NAND_ECC_SOFT; +#else
nand->ecc.mode = NAND_ECC_HW;
nand->ecc.layout = &hw_nand_oob;
nand->ecc.size = 512;
nand->ecc.bytes = 3;
nand->ecc.hwctl = omap_enable_hwecc;
nand->ecc.correct = omap_correct_data;
nand->ecc.calculate = omap_calculate_ecc;
- nand->read_buf = nand_read_buf;
omap_hwecc_init(nand);
+#endif
Indent with tabs.
-Scott