From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1BB5EC433FE for ; Thu, 6 Oct 2022 22:02:50 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 7F06484E09; Fri, 7 Oct 2022 00:02:37 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=iopsys.eu Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=iopsys.eu header.i=@iopsys.eu header.b="VSjs1r3n"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id F11B884BAA; Thu, 6 Oct 2022 18:17:35 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80085.outbound.protection.outlook.com [40.107.8.85]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id EDF9284BE3 for ; Thu, 6 Oct 2022 18:17:31 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=iopsys.eu Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=mikhail.kshevetskiy@iopsys.eu ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RzPc+c/mg0LwbgAlQVrQy+/NLlcgzW7nHIQqn6f5GXdkTJW3eBJGhQIe5ORuix2TeYjzE+qePYqnYQzyO7OmgxFmY70L0bydQY1Her96N6xqD3Wf0ulULcEnOrlgwgSizmMMZuEWzWkeBPZYwDPuAU0eNoYDg4GpIj50FFjnMvRo8fZUxcncqxG3nyyTFhELz9wX7OZdVtKjX4Fq0M4m/RCtLEcMojGaLWm/JU0c8nA5uTyjPYsoEn1Sc+8kvG5fQhT9YXZ0ESpoVFiBNBRdwsKdBl+lRhoRMazESmMois8Ir21OGe3gOWhqyWyvGl41jfG9xFM4HeRBlGb96q5tuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UUF+T9B9nLn/UD7BKLyQ+4HpyCqGBxbe3kbcJ62DbXI=; b=M4uqxTdgcjbVbOBwQeMQb2xhy2FCeaclSX5fituDdnyjS/U9SepCPDWItVqP5kbG86JUOHwUwvbIOqR5YrrTsmKqsxo9O59swB7Dkb7GJkS/UNChs5HP73oQAfFREhgbSG1oory1Ump4awlXJuRBMEm458j+gtuyp+OA8ESDEIieHspSe259a+XdkAlgB2vCTQ3tIifLe/I/pmPPzceyceWt/Ux+fGfV9ilW42kUc9zVOqZfyhy71ZHUlryj9oiLzHQWaSj+jiSqn3CKN/T37Pteuxl8rhQRki4wuz1T+qA+5KVA76FjRWGrewZDyCV/ltc5ZgaARUL7qT/GCppgMg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=iopsys.eu; dmarc=pass action=none header.from=iopsys.eu; dkim=pass header.d=iopsys.eu; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iopsys.eu; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UUF+T9B9nLn/UD7BKLyQ+4HpyCqGBxbe3kbcJ62DbXI=; b=VSjs1r3nSafojtJ/vBCBphtIT5IXuAN9fErefDfC9NVbiQ001W/uc90XftaFYe31lAhhpozKSIqV+LdVne1BIlcNgh4YabucKbjYx2ZUawWLXS6+sT2O11WKDL4KPOaSPfjhnGiWNL/ArlBpBhNY0SnjbsK9zPQvXJbdXDo/L14= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=iopsys.eu; Received: from PAXPR08MB6494.eurprd08.prod.outlook.com (2603:10a6:102:154::16) by AS8PR08MB8490.eurprd08.prod.outlook.com (2603:10a6:20b:567::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.24; Thu, 6 Oct 2022 16:17:29 +0000 Received: from PAXPR08MB6494.eurprd08.prod.outlook.com ([fe80::3c25:b934:e13d:d6bd]) by PAXPR08MB6494.eurprd08.prod.outlook.com ([fe80::3c25:b934:e13d:d6bd%5]) with mapi id 15.20.5676.032; Thu, 6 Oct 2022 16:17:29 +0000 Date: Thu, 6 Oct 2022 19:17:26 +0300 From: Mikhail Kshevetskiy To: Michael Nazzareno Trimarchi Cc: u-boot@lists.denx.de, Dario Binacchi , Stefan Roese , agnau@iopsys.eu Subject: Re: [PATCH 2/7] mtd/nand: try to erase bad blocks only if scrub flag is provided Message-ID: <20221006191726.49b94916@laska.lan> In-Reply-To: References: <20221006031501.110290-1-mikhail.kshevetskiy@iopsys.eu> <20221006031501.110290-2-mikhail.kshevetskiy@iopsys.eu> <20221006185210.537a28fb@laska.lan> X-Mailer: Claws Mail 4.1.0 (GTK 3.24.34; x86_64-pc-linux-gnu) Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-ClientProxiedBy: GVX0EPF000013E3.SWEP280.PROD.OUTLOOK.COM (2603:10a6:144:1::23) To PAXPR08MB6494.eurprd08.prod.outlook.com (2603:10a6:102:154::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR08MB6494:EE_|AS8PR08MB8490:EE_ X-MS-Office365-Filtering-Correlation-Id: 89ee88b7-665c-4f57-690c-08daa7b64442 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: X13nAMx7t6OoUY3CHjj8mKVRG5Ub8erf3KUAYViaQaH7LAX11jgZAoKSMV+zNDupQdYkKTta3sbHf0BFvsbohV01IHKrQw4uaaFCSLfsB/jyxgG8H7RS6Ulj14OqZrZuYAzTkXQyYQH8yedZWXv/gSxAaJ5ieOGijIK+4dDZv+eo8pCejFdWnGI3f22W/8XNWF5gU9rF24NVnHnqEYwSWt3894SslINSD44Uync5GgzylKBarnWgTiD0kvg8D5kDY+beVVLtxs1IBGQKe5iMMb5urB8xnln3dFlpRkuEBQcWm1v36CRW6qc92s2VIFRm7DaDXOC1C5wlpqWk7xzPNYppNTLhgu0vzDHW89bSs5r3xJqKecNBb4/tlhPH+Tmg3cFzGo9ZKqJxCkJSW3qr2X0rkpPYKsYSWpZIzv3IIf5LZ77zeNr+jMapxAabQYb1ucdk6bVoG8W0mbyoZhJOfnaYoFt8PqZzhKTJnhNNUDjR/OLd5xrXUbrskzyqLqWOwLfgaU8fqkKzfT4Dq12FwS4fmltxgpoxruKvqv6AEp1CCQfCkB7sdC1XucgkL8DFxE+4XyOnqG7djHFmkZSAYlJYK7v/0qqTU3ENx7LNqCR1/gWsOgPVxL68qCGymhb2QVdBSCsSl+Ml/oWMtVG3Z3TPHGgzw+8qwyy/pLA3bWrnVYnCE8qB5tzQcxD5L71zkYDHEpevchNrP5SfZUEoEJqRADy+O+5CJkiZ2nIdbALH04LllqinKlKpzISYm3y7tzWraX39OhSYt3VocyA4NSGtcfNqsDaj/7FipeRDnA8= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAXPR08MB6494.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(366004)(346002)(39850400004)(136003)(396003)(376002)(451199015)(41300700001)(2906002)(40140700001)(52116002)(53546011)(26005)(86362001)(8936002)(4326008)(66476007)(8676002)(66946007)(83380400001)(54906003)(66556008)(36756003)(316002)(6916009)(44832011)(45080400002)(6486002)(6666004)(107886003)(478600001)(966005)(6506007)(38100700002)(38350700002)(5660300002)(6512007)(9686003)(186003)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?FipxFEi1jkcLRO7/7V6QWJUol0eX8/YbtXevrxIqdpr8PYIJtSGAxADBelm4?= =?us-ascii?Q?Q97MtsHsho7euvdZig2SlC71qAnM5kny2GrvPaLohPFjzITNGb3Y69TiJdwr?= =?us-ascii?Q?HXiRJgdpjaQ98T7RT7LH81y8dpNzTF2rYJyItgx0J9lZXzC68WWomq+Uw/am?= =?us-ascii?Q?yzbiwR2z4tT+kmRMD3zw3YOMfcbXbfYRso7mWbPx3qaBT9XoVmux/O0ztJav?= =?us-ascii?Q?whjU0a3rBBGeYbiofpb9EOIOuXfU/GntuGx4AWCqDltdVMRHsY8huct/9toG?= =?us-ascii?Q?Lm8jhu6DLVcL5Ho18Wrw7/1LW7BMre93a1X6tqjovYlbBp3F8S0zWsyYEfzu?= =?us-ascii?Q?7nyYxa6r1Q1336pmYn5JEZquICB1kRzL9rRg3yMOTOvn2YzUE5+nWtRCFyJI?= =?us-ascii?Q?5VrgKs1URwzbEqvLuO67hLiUXF/VyPAlWnSh/485MF2o9nmOMS2jZto7echy?= =?us-ascii?Q?luxQENS1dQIzrqbQyRd6i1FcVsgm8KH3Q3WQUNjmGIVqK0dFavbe2jTSZinO?= =?us-ascii?Q?1T8JQbDh5EfHvs25CXTepGZoewnGtGXsZB1bWFEAUHh1y9BomMfw1V/QT3xG?= =?us-ascii?Q?D/xYgyXxxpNej7iFqJnglwYFs2hs9wytFDMiz5efsvm55nG/1/Ti5EckXk4y?= =?us-ascii?Q?lyT9A8TOQxvxRWIaYDaMrTvvZeGtO7+2fIiY9j+8GXTmC/Ai29Ab4YEUWJuJ?= =?us-ascii?Q?Tk5d2Qc7NMCHcQal3VNOus5Erfk3bpszaoSmaYzPWUhPDY6xOcMjPXaJvGnx?= =?us-ascii?Q?cPCnFaTjwGynPCac1ap9skBHfpB4Hw8RzELMIi581H61q8LLdVnlejtaMkOr?= =?us-ascii?Q?AbDt2DlpFg8IQfaaCLQkXmu2IX0Ida/7W6X51+t9aXN1rDO0YD/8rxhMH5Is?= =?us-ascii?Q?DYsG5lYaxL93+1nHUz5JT0epDIpBQwoPfXZ1dihHbb8tm8Pa+3OnpxUtk2Yd?= =?us-ascii?Q?R0QMtWBLlDIobGDlymslm8HQcMRuhTbg34iasKXJzEBB7ur48hqwD5cAdDIO?= =?us-ascii?Q?QiI/QavYUKOeQT57+HkFAhxMbhgGKpX5oGo8Hr1YwMsS4yibZxONGo1Iu5Oq?= =?us-ascii?Q?kL4Q2Aa3UbUrrH6XGSDe410p0VzdjS29MmUh9y0dNi5nb7IlshZ4iOlzcJTv?= =?us-ascii?Q?9q15jwgLY/sWQkeGoa8oPENIX1VYO7A1WrrvTdDoYLqnacRwCzDD1EdS2Rb/?= =?us-ascii?Q?jvGVTUvBcKpbuM9c/50aSgalXwXscfvXUssuJoaCSdtkCtDQIvX8ogSCbvs3?= =?us-ascii?Q?XaI1wQBRNlGuISrxJweHp5wI0FKYwg2udIiQXuS3wC0HfsQVJwDewWYNqg1u?= =?us-ascii?Q?gNW7lMef+ndLQbfqWSPg5BXCa2dG5r6pnGV8XW7M7zL0Uyxy0edx6v+8zpvU?= =?us-ascii?Q?246bAHU2H4TggpjytrbIVwzAhQ9aDGZiZYz6ZR8Q2jQuC3BQPQeqALdHgqIE?= =?us-ascii?Q?ROQjEmcw0Ht/3rXmgAJWwsQUZP8mJAkEDYStT82nBTbGgpR8fexQHIoyTcZG?= =?us-ascii?Q?LxSFQbVY4of5eBrrLtmlxT5x9w2XdqSvIW0yRO1ZL1JIhDX0XRXWG4g8YdSE?= =?us-ascii?Q?asQhF4cffNk3GZQG+jUUiny0gRsA/yzWH4+JyY24WsQfCuTgzlUTMj8cnjRu?= =?us-ascii?Q?AA=3D=3D?= X-OriginatorOrg: iopsys.eu X-MS-Exchange-CrossTenant-Network-Message-Id: 89ee88b7-665c-4f57-690c-08daa7b64442 X-MS-Exchange-CrossTenant-AuthSource: PAXPR08MB6494.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Oct 2022 16:17:29.8529 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 7ff78d65-2de4-40f5-8675-0569e5c7a65d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vuyqWrmsQMEhtHm7UfpVyMKzp/nr2u1b8H3DYRqN7JSG/5cJXZOhTyUW6nKQYO0EpnCfA8/rzUQPYbF4ErZ1ZqVWHyZunYbRtmQF7aR02A8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8490 X-Mailman-Approved-At: Fri, 07 Oct 2022 00:02:31 +0200 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.6 at phobos.denx.de X-Virus-Status: Clean On Thu, 6 Oct 2022 18:03:17 +0200 Michael Nazzareno Trimarchi wrote: > [External email] > > > > > > On Thu, Oct 6, 2022 at 5:52 PM Mikhail Kshevetskiy > wrote: > > > > On Thu, 6 Oct 2022 08:56:08 +0200 > > Michael Nazzareno Trimarchi wrote: > > > > > [External email] > > > > > > > > > > > > > > > > > > Hi > > > > > > On Thu, Oct 6, 2022 at 5:15 AM wrote: > > > > > > > > From: Mikhail Kshevetskiy > > > > > > > > 'mtd erase' command should not erase bad blocks. To force bad block > > > > erasing there is 'mtd erase.dontskipbad' command (this command sets > > > > 'scrub' flag to true in the erase_info structure). Unfortunately nand > > > > layer ignore scrub flag and try to erases bad blocks unconditionally. > > > > This is wrong. > > > > > > > > Add checks to allow bad block erasing only if scrub flag is set. > > > > > > > > Signed-off-by: Mikhail Kshevetskiy > > > > --- > > > > drivers/mtd/nand/core.c | 5 ++++- > > > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > > > > > diff --git a/drivers/mtd/nand/core.c b/drivers/mtd/nand/core.c > > > > index 99c29670c7..a4fb7602c9 100644 > > > > --- a/drivers/mtd/nand/core.c > > > > +++ b/drivers/mtd/nand/core.c > > > > @@ -174,7 +174,10 @@ int nanddev_mtd_erase(struct mtd_info *mtd, struct > > > > erase_info *einfo) nanddev_offs_to_pos(nand, einfo->addr + einfo->len - > > > > 1, &last); while (nanddev_pos_cmp(&pos, &last) <= 0) { > > > > schedule(); > > > > - ret = nanddev_erase(nand, &pos); > > > > + if (!einfo->scrub && nanddev_isbad(nand, &pos)) > > > > > > The nandev_erase already check it here: > > > > > > if (nanddev_isbad(nand, pos) || nanddev_isreserved(nand, pos)) { > > > > > > > no it does not work. see nanddev_erase() code > > > > Let me re-formulate it. What execution path are you taking into account? > > The nand are erased using the cmd/nand interface and the erase command > there calls nand_erase_opts that take in account it. spi-nand flash cmd/mtd.c -> do_mtd_erase() -> .... -> nanddev_mtd_erase() -> nanddev_erase() > > Michael > > > > The nand is erased using the > > if block is bad or reserverved, than warning is printed, than block is > > erased. > > > > > > > > + ret = -EIO; > > > > + else > > > > + ret = nanddev_erase(nand, &pos); > > > > > > erase opt should already take in account scrub. > > > > > > Please extend the problem > > > > > > Michael > > > > if (ret) { > > > > einfo->fail_addr = nanddev_pos_to_offs(nand, > > > > &pos); > > > > > > > > -- > > > > 2.35.1 > > > > > > > > > > > > > -- > > > Michael Nazzareno Trimarchi > > > Co-Founder & Chief Executive Officer > > > M. +39 347 913 2170 > > > michael@amarulasolutions.com > > > __________________________________ > > > > > > Amarula Solutions BV > > > Joop Geesinkweg 125, 1114 AB, Amsterdam, NL > > > T. +31 (0)85 111 9172 > > > info@amarulasolutions.com > > > https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.amarulasolutions.com%2F&data=05%7C01%7Cmikhail.kshevetskiy%40iopsys.eu%7C220e94cc3ad54f5ccca108daa7b44fe6%7C7ff78d652de440f586750569e5c7a65d%7C0%7C0%7C638006690117535825%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=zTEEwU%2BKnLWNDq5xs77MmD6SI%2F31bRf3fEx%2Fyaa65%2FU%3D&reserved=0 > > > > -- > Michael Nazzareno Trimarchi > Co-Founder & Chief Executive Officer > M. +39 347 913 2170 > michael@amarulasolutions.com > __________________________________ > > Amarula Solutions BV > Joop Geesinkweg 125, 1114 AB, Amsterdam, NL > T. +31 (0)85 111 9172 > info@amarulasolutions.com > https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.amarulasolutions.com%2F&data=05%7C01%7Cmikhail.kshevetskiy%40iopsys.eu%7C220e94cc3ad54f5ccca108daa7b44fe6%7C7ff78d652de440f586750569e5c7a65d%7C0%7C0%7C638006690117535825%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=zTEEwU%2BKnLWNDq5xs77MmD6SI%2F31bRf3fEx%2Fyaa65%2FU%3D&reserved=0