Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753700AbbHKUBc (ORCPT ); Tue, 11 Aug 2015 16:01:32 -0400 Received: from smtp10.smtpout.orange.fr ([80.12.242.132]:17493 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753427AbbHKUBb (ORCPT ); Tue, 11 Aug 2015 16:01:31 -0400 X-ME-Helo: belgarion.home X-ME-Date: Tue, 11 Aug 2015 22:01:29 +0200 X-ME-IP: 90.38.169.142 From: Robert Jarzmik To: Ezequiel Garcia , David Woodhouse , Brian Norris Cc: linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org, Robert Jarzmik Subject: [PATCH 3/3] mtd: nand: pxa3xx-nand: fix readid without keep_config Date: Tue, 11 Aug 2015 21:57:14 +0200 Message-Id: <1439323034-8820-3-git-send-email-robert.jarzmik@free.fr> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1439323034-8820-1-git-send-email-robert.jarzmik@free.fr> References: <1439323034-8820-1-git-send-email-robert.jarzmik@free.fr> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1400 Lines: 40 The cases of READID detection are broken on pxa3xx. The reason is that in the early stages of nand probing, ie. at pxa3xx_nand_scan(), we always have : - info->use_dma = 0 (regardless of dma support yet) - info->chunk_size = 0 (not yet detected) The READID issued by pxa3xx_nand_scan() will therefore end up in handle_data_pio(), and do_bytes will be 0, leading to not reading the nand id, and blocking detection. This doesn't happen if "keep_config" is used, which is probably the most tested case. Signed-off-by: Robert Jarzmik Fixes: 70ed85232a93 ("mtd: nand: pxa3xx: Introduce multiple page I/O support") --- drivers/mtd/nand/pxa3xx_nand.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c index edfe329cc9db..b0737aec7caf 100644 --- a/drivers/mtd/nand/pxa3xx_nand.c +++ b/drivers/mtd/nand/pxa3xx_nand.c @@ -1482,6 +1482,7 @@ static int pxa3xx_nand_scan(struct mtd_info *mtd) int i, ret, num; uint16_t ecc_strength, ecc_step; + info->chunk_size = 512; if (pdata->keep_config && !pxa3xx_nand_detect_config(info)) goto KEEP_CONFIG; -- 2.1.4 -- 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/