On Fri, Dec 13, 2013 at 05:03:49AM +0000, Caizhiyong wrote: > From: Cai Zhiyong <caizhiy...@huawei.com> > Date: Fri, 13 Dec 2013 12:52:46 +0800 > Subject: [PATCH] mtd: increase max page/OOB size to support 16K pagesize NAND. > > The Toshiba's TC58TEG5DCJTA pagesize is 16K, oob size is 1280 bytes. > So increase the NAND_MAX_OOBSIZE and NAND_MAX_PAGESIZE.
It would help if we had nand_base/nand_ids support for TC58TEG5DCJTA before we try to increase NAND_MAX_PAGESIZE and NAND_MAX_OOBSIZE yet again. AFAICT, nand_base will not detect new, large Toshiba flash properly anyway. > Signed-off-by: Cai Zhiyong <caizhiy...@huawei.com> > --- > include/linux/mtd/nand.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h > index f3ea8da..2f0a7f2 100644 > --- a/include/linux/mtd/nand.h > +++ b/include/linux/mtd/nand.h > @@ -56,8 +56,8 @@ extern int nand_unlock(struct mtd_info *mtd, loff_t ofs, > uint64_t len); > * is supported now. If you add a chip with bigger oobsize/page > * adjust this accordingly. > */ > -#define NAND_MAX_OOBSIZE 744 > -#define NAND_MAX_PAGESIZE 8192 > +#define NAND_MAX_OOBSIZE 1280 > +#define NAND_MAX_PAGESIZE 16384 It might be time to draw a line in the sand: next person who needs to increase MAX_{PAGE,OOB}SIZE gets the job of killing the macro? We are long overdue for dynamic buffer allocation. There are two drivers that use the macros, plus nand_chip.buffers.*. The drivers can be weaned off by allocating a small, fixed-size temporary buffer for the few tasks that need it. With nand_base.c, I think we can get by with waiting to allocate nand_chip.buffers until after we detect the writesize/oobsize. So Cai, are you up for this? > > /* > * Constants for hardware specific CLE/ALE/NCE function > Brian -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/