Received: by 10.192.165.148 with SMTP id m20csp460903imm; Fri, 4 May 2018 13:09:40 -0700 (PDT) X-Google-Smtp-Source: AB8JxZreI4XIjRXkE73f/S5Zhcg/Svvj14rZER11JTbQ12cKoVC6sMlzgjtiaYIeO4+0jj4gjuDD X-Received: by 10.98.35.215 with SMTP id q84mr28010741pfj.31.1525464580509; Fri, 04 May 2018 13:09:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525464580; cv=none; d=google.com; s=arc-20160816; b=Hr27ii2keYoZexOBnsvdm7hfkD65jxPdUPt30GK4X48q56rDCKrioSTX9LD+iPYhUD z/yalRMnGuQ8pj7y9D0asYvAAEYlYcyN/d5pkXV3yPhZrbes3FcHxE1m3TJsd3Abc/hh fAZz0qPPni2pTmrNEC3d2hAt+2EjNR0xPJ/n8mEn5otv3AYkFVUFqaLqxoomxgrdR9DG V37uC6tCHbVM9xPW/bI6eMxUlFuKSl1w3NqZU22zymRPKQK4KWLUUQcR8ubfFxGRuHSz UnkNDpRBxRvzQngE2sJjEEMwp8CQe0X+KML6nUBERsfB0x8WMH7TAxFCZDdbhuUqD4cL H/cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:message-id:date:subject:cc:to :from:dkim-signature:arc-authentication-results; bh=Z6h0RBxVJmHXkzuUHj9hs9cuL4Ic9pB0iOvxBYZDmzQ=; b=xOaI2SAMkwqpdQ9mZx4oSGZSbmZm3ze6uQ0bxPSShdci2D5vjufXoevoEWvM5QRkmi uvXu+/GP556NwVnZ4T0sDIjnhOUWuzHC/klsyn85QC5QsWrCsVjZmk7ySunhaiJYM1dL pSH3ARSXVP23VEpogOMnLbfLrO03Wf4zOnZFYJBXmiBr1wCuTYV6IpJSsR5g5ITUttVP NAmW7mcZJZkhD6A7eMVT4zhsdO5NwCIdDb/4fjb7+NS8ApUiA8ABDati/Btpb5smx84X ySJzPlKhn6/3Q+zsix7t5kfJbUhJ3jq2VfMDmGDhmuA5jDmQ2fpMrwg7TUWNrxP+LsQW V6Sw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nokia.onmicrosoft.com header.s=selector1-nokia-com header.b=oiSg51CL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nokia.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b9-v6si8779180pgu.27.2018.05.04.13.09.25; Fri, 04 May 2018 13:09:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@nokia.onmicrosoft.com header.s=selector1-nokia-com header.b=oiSg51CL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nokia.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752146AbeEDUIw (ORCPT + 99 others); Fri, 4 May 2018 16:08:52 -0400 Received: from mail-eopbgr30129.outbound.protection.outlook.com ([40.107.3.129]:12691 "EHLO EUR03-AM5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751522AbeEDUIs (ORCPT ); Fri, 4 May 2018 16:08:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Z6h0RBxVJmHXkzuUHj9hs9cuL4Ic9pB0iOvxBYZDmzQ=; b=oiSg51CLy8bT1IzEM1LYOYdzFNcRJZR1Fej8Q6Kvl9yYQbxVkescQvt+j4w6ZydpDOaHVTfoWG8dtbjlUz+6eOVkDlji84l1Ijz8w0amJwwS1o151uOxG6D7+qAkmN2m+3dPSVahrzOq5UtA7xxMLd5wA41nmXFMhPQ6n/yeQfc= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=jane.wan@nokia.com; Received: from cobuntu-jwan.gainspeed.nsn-rdnet.net (131.228.32.160) by VI1PR07MB1616.eurprd07.prod.outlook.com (2a01:111:e400:c546::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.755.10; Fri, 4 May 2018 20:08:41 +0000 From: Jane Wan To: Boris.Brezillon@bootlin.com, miquel.raynal@bootlin.com, dwmw2@infradead.org, computersforpeace@gmail.com, richard@nod.at, marek.vasut@gmail.com, yamada.masahiro@socionext.com, prabhakar.kushwaha@nxp.com, shawnguo@kernel.org, jagdish.gediya@nxp.com, shreeya.patel23498@gmail.com Cc: linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org, ties.bos@nokia.com, Jane Wan Subject: [PATCH v2 1/2] mtd: rawnand: fsl_ifc: fix FSL NAND driver to read all ONFI parameter pages Date: Fri, 4 May 2018 13:08:12 -0700 Message-Id: <1525464493-5006-1-git-send-email-Jane.Wan@nokia.com> X-Mailer: git-send-email 1.7.9.5 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [131.228.32.160] X-ClientProxiedBy: DB6PR06CA0009.eurprd06.prod.outlook.com (2603:10a6:6:1::22) To VI1PR07MB1616.eurprd07.prod.outlook.com (2a01:111:e400:c546::18) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:(109105607167333);BCL:0;PCL:0;RULEID:(7020095)(4652020)(8989080)(5600026)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(8990040)(2017052603328)(7193020);SRVR:VI1PR07MB1616; X-Microsoft-Exchange-Diagnostics: 1;VI1PR07MB1616;3:INh9cSRp1TI3rwq+lvVmFKC8Qsk086q70lK1R4houl9bdOI/ROMOhzdtsbdR0YVvPwlJxzXGz8dfZ/Re4+jFKGPAQSo1+9YR9YAFRRAMKyQk62aDJ6x8sHMKVjll0O3HOJzlU5W5P6hgxJ1cvR6eR1rOzOUirPpTj1vifZYTXgSJ9MckfOhUisG+dZOtZzu7Aqgaw7pr4vehV7Z4AgsJBnGDepH6w4eTnBKS6+oi9W2FFGYhxKSIJhiwuURk/S6ph6ZuxssFDKd1Sl9s2vo3N5A4eYvr7oq+AbV/mO+J9z4=;25:Pa6P4kLGFnQW3l36GwTsgTQwrWkTwrd0UCgc3kJFBEqCoFtmPpc7Lg6YiAoUF40v6lXYUDSWd6ao3FBYVJjmZuRAV7OBpe1mkwLOuF7lMHWdj6lecjW7fgNFdmGEU/huJ9A3ZVnr9AOtggmdVmzdMW5O6mZTWVr+BVfj9VzBES/31QxeGmbj4gZS5yBZd7EPJpRdiy76jjaEW+jx6pR/O79po2qbZTn2CA44u/vtAdjlZ+sRDbm1CJWHWkisb3iheS7H6nxB2tDLT3B7/OnGxPkr55278592V0n23uv0Aho6ErzqkD8zZDDaFB8UPb979qQKGZdv/7Fqr2rsEG6C0w==;31:FLKPGwzaQmhE+H7Ti6NcLWrGwNVOh39XVTDxwK09XmHxOtQu0rrekZ7HQkA/HbGQKQMHnSbAzECXSe2gdky8LunZK4xNNR9zoj515x8VGq6np/TIlb3vtHeHQXoCQErHBFwenTvdWY/Scau14UxbZOd1GDqEDGMHg5M/TmiUjBVp+xv4RWrrzSVxl2AFDtiung1wct0vPwskLfTehImjVIbLemMuDjDYN+Kyu17V568= X-MS-TrafficTypeDiagnostic: VI1PR07MB1616: X-Microsoft-Exchange-Diagnostics: 1;VI1PR07MB1616;20:acWmwfdqZouZp0WLtWir/laZGriFhQVTGtY0zix51nSlYSJVynngZ7zpbYoPGZ4mlDVT+6QHsgf9bus2n5H7hjr5uds84R6c0+EuBSEsBbtbQdHCPeSgeyHxZ6HmrTPfWKESaVSUVGgmCT1snMiF0Mup1WgOdBxoBgDCtg9wno98GQ7PWa/McffMgYWPqldIUoashB8VhACZGFJBy55qirIdpcqiLZK+ExyHv0WNOQiQZcBsjiji5FLf+NGhn806VIej6aySs1tAghb+0ffE7jnJLSm6bubC38MZXjS9yHW6nBVTWLjX+dmORDjUlGPpldERrDRmme2yyTHSEhZiS7xp1N1NQkfmzXNzMl7w7NnHqZM8vy+bE518lhU9zOYZ/eyzypfy19uyzJuMBG+ZePhZsFRgXmbpSd0QA2wS3do5YjPg12oxUrGbxD3iaAvBXexMCRdR8SFrHoadzZ7IRYO+qkFN6xKEzZQ62Ah+tKW9xgbFhUUAricwkM6w6wpS;4:7djlnsJnYeq2hNog24Kt4k7snCG46j3mJv10/go7dJl9G9vzvT9hndswqNNZV0E0XKHe+NSgwUjWV3YGvozhTfwoOn3abaV9fftiIiNzgRjMnxH7f6zJS1vSYjUWw4984CBTNCd6LjZlY+P691I2hZekWirsZDxC+ZOx9BrAChL52P/UvrZThLfUUWDqsCvepKnkHBI0/MKk9WPVR4K5146rI3gb+Mk6PNOuD+/xwHrz7W0RUHRF9wynun+oODKc1GYl3Sv0BCoLbrc73jjmYqTScwtiFijJBz5MjGiRP1HL3cK3s1UASzyNAOyLYgZKQomwhtyrXELlxX8Zxa0puRYCkha3E8o4uiwRveeXxtY= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597)(109105607167333); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040522)(2401047)(5005006)(8121501046)(3231254)(11241501184)(806099)(944501410)(52105095)(10201501046)(93006095)(93001095)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(6072148)(201708071742011);SRVR:VI1PR07MB1616;BCL:0;PCL:0;RULEID:;SRVR:VI1PR07MB1616; X-Forefront-PRVS: 06628F7CA4 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(39380400002)(366004)(346002)(39860400002)(376002)(396003)(199004)(189003)(86362001)(25786009)(4720700003)(105586002)(2906002)(16526019)(186003)(68736007)(6666003)(5660300001)(106356001)(26005)(8656006)(6116002)(3846002)(39060400002)(48376002)(66066001)(107886003)(47776003)(53936002)(6512007)(305945005)(50466002)(36756003)(7736002)(51416003)(8676002)(81166006)(81156014)(52116002)(6506007)(386003)(478600001)(4326008)(8936002)(16586007)(316002)(956004)(6486002)(2616005)(97736004)(50226002)(476003)(7416002)(486006)(921003)(1121003)(217873001);DIR:OUT;SFP:1102;SCL:1;SRVR:VI1PR07MB1616;H:cobuntu-jwan.gainspeed.nsn-rdnet.net;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; Received-SPF: None (protection.outlook.com: nokia.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;VI1PR07MB1616;23:yveRn5+eNOIUqkZGGHZ4yOf03Aa27sCgLaslkUgEa?= =?us-ascii?Q?ivG1gJak3z4w0JU86mM0Aie7HjOS4TBMgaBHGG8gqY93wlvwcGJWKAMa01z/?= =?us-ascii?Q?id32b5loIeQWMnme7tI8biggg54MdohR4thMBigHtafd3B6vEbRRrwzORra7?= =?us-ascii?Q?mv1jiXPCmaaxpNxW18Sl6xDUpCObEuhplNoG11axO9lQQxmr8EzC/Cb7uRbw?= =?us-ascii?Q?fEcb2OFQA65T/Pruj2M08AKItjbZhGGQE6PcdeNKRT3FIOIdzkGIsA9Gl69I?= =?us-ascii?Q?dxR3wvKE5hktVbY7kvkIINt8/wKFulfyy9BxYxw3NgToIX0+VtT2ZuCdyiDg?= =?us-ascii?Q?RvHJaXLE9AWtRhuBFUGGv72tkfYdQoj/+LXN/KsQSrZ4WCgQCjotB2QEOTve?= =?us-ascii?Q?sMMAfB4xbkNK94pYupqI2KIiphunPAj7X3od5gbbfjl60pS+eo4Ky6djR2Qp?= =?us-ascii?Q?/WGZR6h5kHgRaEmHJBUL2/POZy0i5b4iG/4VXnf9W6fKtzm7RXl9rQ9bQBke?= =?us-ascii?Q?qbFGLXeApeSFMSK8kySE5YYnYe3XGXViTrxLiwqrvHknJyW91LHlwhPi7atU?= =?us-ascii?Q?WJEZh5WHW6tGlvWUevV/Tum2Dbn372naxjkR77RcuTpK5KzDZ4L6ZvpJ27fm?= =?us-ascii?Q?Ji/jaTGyRlqkJwqlx3enRnmahzugEXpC8rcvBqKjT7ElgacE6+FdMTnhPNAF?= =?us-ascii?Q?dfQ985WMrULw5nOaStJQPYTOJXi6YkGkA0c789K/cttehQ+a65ypTnm1fQDs?= =?us-ascii?Q?LY7pOFsX8BWqwH6v7VvalQHfnBfL85jWuanQz7hjAuJSmFJ8eIDsRl5dkSNg?= =?us-ascii?Q?BhsKjNxqk6WOlEl6515BQC/fKxAeGXv7M97ECwucGIvtp2qkJl77IHGDsjiP?= =?us-ascii?Q?nNfnPAKAjJ2P66QgjSQb9qyl0qlKfNDfG9UiJOzrt0OxGrQtLo2nMpkirGYe?= =?us-ascii?Q?rEoLEWFh8kobhivzRxWQN51H9TaPQbFmg/guvuoK6ak8vGu4E/D6LRFT/8C9?= =?us-ascii?Q?+OEgqYVBdMhGHaNxfqa1srdDORYvRleCVk9xqsZ/jCUn8PHOGfELUv6e5f8J?= =?us-ascii?Q?lMYbo8EXy/fqzRsLW1yQLaY7Q/GXvtqQEKyngX9Mv2J5FDsg0k/GtUWGHVnz?= =?us-ascii?Q?cPzNabWSjgvfrbBlCrhO0suRaxHqpQSgayd2lQGzErOYm8ZcGJnfLySs03l6?= =?us-ascii?Q?mbyk1XVa82yE3bhTd3KlSBnTtc9iIbVRbcGYrlv3X9711azADE+8F6DbzMFA?= =?us-ascii?Q?DdzbvikIzvemeWXujDbGXVCwFXIqIDDtvbV727Y?= X-Microsoft-Antispam-Message-Info: 4xTlj+jvQwPMMe6mX4BuuPje5Djrbg4/MxZ22nx583DETE3XEWfC1ig1KQPbHdyS4V1lJU2uxTqLdHS+pwaiVhfFJUaJGNsO30xcIwe9xsDzgEjh5IbKLASEOw9bKBJjMN2MWklkM5+MDuf6jAK2j7Uzush13G9B7vKPlRoIYNk8qy3kcpyORxE0E+UdhVxMZ+DHy3s2+wVFr4cBTRU1e5yiZe2YX76TrDFE9ZYa6Wk= X-Microsoft-Exchange-Diagnostics: 1;VI1PR07MB1616;6:GylzoRbRhiUOXeuS95w5nUBa62c9LkAVem3+NpePXSJzUegJzP6O26tU09p8Wuab/aQsx+1WWHGe0fj3mgDtNnggpnkJTzryY167KNSELQBxhMxas4I0fFRBiO6n7D7fvf0gcvnf9IjtKErIz2oTFeSCh3FaIEujkR/EQ/61EyDTo+KjWyDMLqhrY5bS30Ejeq2eGT1nw2rJCU3QK8d2P9AC5HcG6uyjgMKqxI1uW8bcgz4d7YUgYVzizBOsnsVKA78xaDlSpXDc44EEmgrOPaaC+HDQqqqBu5+gG/UZN46iao7puUkUZPPa4D+cNYWJPwuQwrBQzN95xqHZf0NZTfxGgcb3QByePZPaJbAgALo6FX7z8KLYN0+hqeC+FTBnVGF6QXqVV++UZSKz5Vn2F8AQ/Q0RjxCZ1EoGrcVBTL/wCBJxmq8hyev/oW+7lkzdYV1K8/XKYt2aznBIqyg7kg==;5:KZnB44jb0nqBr2JcDD5VDPRHDZxExEv74bxHkQknuy9Lf5wMEgCruXZq8Ld/StUidXbX97RS3IWYGWSuxz4lTlI1JT+fcYvL8/H6Pp0GVN/0X84w1lZ3sJpjkcW110JDEFEVqVK/cW3aazu0Lf2tIvc3+yML/2ec+S5ax1DsMWk=;24:PZh1GK6E2f11kmvGE6N2idI9or0knRh2ZeWvdxVrYc7MmoW1eV2onZiCNkCg9s3lFM+ySlVcrZx2YtTAZHJnPLEjUYd0OvzR3umFa30t55w= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;VI1PR07MB1616;7:ahnd5ceztOEbBt19pXfcM5lYdbzMmCC4XdOdx58b+yIfenuvXQIQizVt/zzyf2wscMfN01Yfi8Uq1AeSsihwR1gtYDJlO+5ivf8qxkj88lE7OhxKpwYluXzhJl/FB3PxPWlrwsroDW4tvlThLAVa3tW9ENgzE/vhFXTuqZecmV5yHWFjJJguc7E/Q3XMp8bxniyTOTqV5qifiSEKm0CDKe348xjDD8rwCdkmQbcPAl4dG5G6PaYH4oYSZTcLxF13 X-MS-Office365-Filtering-Correlation-Id: 45accf91-5a49-45f9-5619-08d5b1fad737 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 May 2018 20:08:41.6130 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 45accf91-5a49-45f9-5619-08d5b1fad737 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB1616 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Per ONFI specification (Rev. 4.0), if the CRC of the first parameter page read is not valid, the host should read redundant parameter page copies. Fix FSL NAND driver to read the two redundant copies which are mandatory in the specification. Signed-off-by: Jane Wan --- drivers/mtd/nand/raw/fsl_ifc_nand.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/drivers/mtd/nand/raw/fsl_ifc_nand.c b/drivers/mtd/nand/raw/fsl_ifc_nand.c index 61aae02..98aac1f 100644 --- a/drivers/mtd/nand/raw/fsl_ifc_nand.c +++ b/drivers/mtd/nand/raw/fsl_ifc_nand.c @@ -342,9 +342,16 @@ static void fsl_ifc_cmdfunc(struct mtd_info *mtd, unsigned int command, case NAND_CMD_READID: case NAND_CMD_PARAM: { + /* + * For READID, read 8 bytes that are currently used. + * For PARAM, read all 3 copies of 256-bytes pages. + */ + int len = 8; int timing = IFC_FIR_OP_RB; - if (command == NAND_CMD_PARAM) + if (command == NAND_CMD_PARAM) { timing = IFC_FIR_OP_RBCD; + len = 256 * 3; + } ifc_out32((IFC_FIR_OP_CW0 << IFC_NAND_FIR0_OP0_SHIFT) | (IFC_FIR_OP_UA << IFC_NAND_FIR0_OP1_SHIFT) | @@ -354,12 +361,8 @@ static void fsl_ifc_cmdfunc(struct mtd_info *mtd, unsigned int command, &ifc->ifc_nand.nand_fcr0); ifc_out32(column, &ifc->ifc_nand.row3); - /* - * although currently it's 8 bytes for READID, we always read - * the maximum 256 bytes(for PARAM) - */ - ifc_out32(256, &ifc->ifc_nand.nand_fbcr); - ifc_nand_ctrl->read_bytes = 256; + ifc_out32(len, &ifc->ifc_nand.nand_fbcr); + ifc_nand_ctrl->read_bytes = len; set_addr(mtd, 0, 0, 0); fsl_ifc_run_command(mtd); -- 1.7.9.5