Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757257Ab1ELPkd (ORCPT ); Thu, 12 May 2011 11:40:33 -0400 Received: from co202.xi-lite.net ([149.6.83.202]:50096 "EHLO co202.xi-lite.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756674Ab1ELPkc (ORCPT ); Thu, 12 May 2011 11:40:32 -0400 Message-ID: <4DCBFF4B.9030609@parrot.com> Date: Thu, 12 May 2011 17:39:55 +0200 From: Matthieu CASTET User-Agent: Thunderbird 2.0.0.24 (X11/20100228) MIME-Version: 1.0 To: Nitin Garg CC: Andrew Morton , "linux-mtd@lists.infradead.org" , David Woodhouse , "linux-kernel@vger.kernel.org" Subject: Re: Bug in MTD NAND ONFI chipsize detection References: <20110511183322.da0739c9.akpm@linux-foundation.org> <4DCB908C.80505@parrot.com> In-Reply-To: Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2304 Lines: 70 Nitin Garg a ?crit : > I do not see any diff for mtd. > ONFI spec say [1]. Why this doesn't apply to mtd ? [1] 3.1.2. Logical Unit Selection Logical units within one target share a single data bus with the host. The host shall ensure that only one LUN is selected for data output to the host at any particular point in time to avoid bus contention. The host selects a LUN for future data output by issuing a Read Status Enhanced command to that LUN. The Read Status Enhanced command shall deselect the output path for all LUNs that are not addressed by the command. The page register selected for output within the LUN is determined by the previous Read (Cache) commands issued, and is not impacted by Read Status Enhanced. > Regards, > Nitin > > On Thu, May 12, 2011 at 2:47 AM, Matthieu CASTET > wrote: >> Hi, >> >> >> What's the difference between one lun and multiple lun for mtd ? >> >> Aren't any command to select the current lun ? >> >> Matthieu >> >> >> Nitin Garg a ?crit : >>> Why isn't my patch going through? re-sending again, >>> >>> Signed-off-by: Nitin Garg >>> --- >>> drivers/mtd/nand/nand_base.c | 2 +- >>> 1 files changed, 1 insertions(+), 1 deletions(-) >>> >>> diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c >>> index c54a4cb..cdf6015 100644 >>> --- a/drivers/mtd/nand/nand_base.c >>> +++ b/drivers/mtd/nand/nand_base.c >>> @@ -2892,7 +2892,7 @@ static int nand_flash_detect_onfi(struct >>> mtd_info *mtd, struct nand_chip *chip, >>> mtd->writesize = le32_to_cpu(p->byte_per_page); >>> mtd->erasesize = le32_to_cpu(p->pages_per_block) * mtd->writesize; >>> mtd->oobsize = le16_to_cpu(p->spare_bytes_per_page); >>> - chip->chipsize = (uint64_t)le32_to_cpu(p->blocks_per_lun) * mtd->erasesize; >>> + chip->chipsize = (uint64_t)le32_to_cpu(p->blocks_per_lun) * >>> le32_to_cpu(p->lun_count) * mtd->erasesize; >>> busw = 0; >>> if (le16_to_cpu(p->features) & 1) >>> busw = NAND_BUSWIDTH_16; > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/