summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/nand
diff options
context:
space:
mode:
authorHuang Shijie2013-09-25 08:58:13 +0200
committerBrian Norris2013-10-28 00:27:05 +0100
commit13fbd17941db6af61337d909fd09b9c7f7634632 (patch)
tree9c73082dd5ae37a82bcd725c1dd1b8a9ef2294f7 /drivers/mtd/nand
parentmtd: nand: add the "bits per cell" info for legacy ID NAND (diff)
downloadkernel-qcow2-linux-13fbd17941db6af61337d909fd09b9c7f7634632.tar.gz
kernel-qcow2-linux-13fbd17941db6af61337d909fd09b9c7f7634632.tar.xz
kernel-qcow2-linux-13fbd17941db6af61337d909fd09b9c7f7634632.zip
mtd: nand: set the cell information for ONFI nand
The current code does not set the SLC/MLC information for onfi nand. (This makes that the kernel treats all the onfi nand as SLC nand.) This patch fills the cell information for ONFI nands. Signed-off-by: Huang Shijie <b32955@freescale.com> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Diffstat (limited to 'drivers/mtd/nand')
-rw-r--r--drivers/mtd/nand/nand_base.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index aebc7ea9f379..137d6c501f19 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -2992,6 +2992,7 @@ static int nand_flash_detect_onfi(struct mtd_info *mtd, struct nand_chip *chip,
mtd->oobsize = le16_to_cpu(p->spare_bytes_per_page);
chip->chipsize = le32_to_cpu(p->blocks_per_lun);
chip->chipsize *= (uint64_t)mtd->erasesize * p->lun_count;
+ chip->bits_per_cell = p->bits_per_cell;
if (onfi_feature(chip) & ONFI_FEATURE_16_BIT_BUS)
*busw = NAND_BUSWIDTH_16;