From patchwork Fri Jul 23 06:59:25 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rohit Hassan Sathyanarayan X-Patchwork-Id: 59738 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [18.85.46.34]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 25726B7105 for ; Fri, 23 Jul 2010 17:01:14 +1000 (EST) Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.72 #1 (Red Hat Linux)) id 1OcCEI-0007dt-V0; Fri, 23 Jul 2010 06:59:34 +0000 Received: from mailout2.samsung.com ([203.254.224.25]) by bombadil.infradead.org with esmtp (Exim 4.72 #1 (Red Hat Linux)) id 1OcCEG-0007Pr-A9 for linux-mtd@lists.infradead.org; Fri, 23 Jul 2010 06:59:33 +0000 Received: from epmmp1. (mailout2.samsung.com [203.254.224.25]) by mailout2.samsung.com (Sun Java(tm) System Messaging Server 7u3-15.01 64bit (built Feb 12 2010)) with ESMTP id <0L6000KE30R44S80@mailout2.samsung.com> for linux-mtd@lists.infradead.org; Fri, 23 Jul 2010 15:59:28 +0900 (KST) Received: from roh83 (unknown [107.108.214.183]) by mmp1.samsung.com (Sun Java(tm) System Messaging Server 7u3-15.01 64bit (built Feb 12 2010)) with ESMTPA id <0L600007K0R12I40@mmp1.samsung.com> for linux-mtd@lists.infradead.org; Fri, 23 Jul 2010 15:59:27 +0900 (KST) From: Rohit Hassan Sathyanarayan To: linux-mtd@lists.infradead.org, dedekind1@gmail.com, =?iso-8859-1?Q?'Enric_Balletb=F2_i_Serra'?= Subject: [PATCH] [MTD] onenand/onenand_base.c:Fix for page addr calculation based on device type Date: Fri, 23 Jul 2010 12:29:25 +0530 Message-id: <000401cb2a34$974af890$c5e0e9b0$%hs@samsung.com> MIME-version: 1.0 X-Mailer: Microsoft Office Outlook 12.0 Thread-index: AcsqNJXq/ZGNsG5DT/WAKBU0g3V32g== Content-language: en-us X-CRM114-Version: 20090807-BlameThorstenAndJenny ( TRE 0.7.6 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20100723_025932_570333_F188BDBA X-CRM114-Status: UNSURE ( 8.16 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -2.3 (--) X-Spam-Report: SpamAssassin version 3.3.1 on bombadil.infradead.org summary: Content analysis details: (-2.3 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at http://www.dnswl.org/, medium trust [203.254.224.25 listed in list.dnswl.org] -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain Cc: rohit.hs@samsung.com, v.dalal@samsung.com X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-mtd-bounces@lists.infradead.org Errors-To: linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org Hi all Sending the patch for page address calculation based on device type. This resolves the OneNAND DDP device read problem as pointed by Enric. http://lists.infradead.org/pipermail/linux-mtd/2010-July/030920.html Signed-off-by: Rohit HS --- drivers/mtd/onenand/onenand_base.c | 7 +++++-- 1 file changed, 3 insertions(+) --- diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c index 26caf25..f749935 100644 --- a/drivers/mtd/onenand/onenand_base.c +++ b/drivers/mtd/onenand/onenand_base.c @@ -377,8 +377,11 @@ static int onenand_command(struct mtd_info *mtd, int cmd, loff_t addr, size_t le default: block = onenand_block(this, addr); - page = (int) (addr - onenand_addr(this, block)) >> this->page_shift; - + if (FLEXONENAND(this)) + page = (int) (addr - onenand_addr(this, block))>>\ + this->page_shift; + else + page = (int) (addr >> this->page_shift); if (ONENAND_IS_2PLANE(this)) { /* Make the even block number */ block &= ~1;