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 X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id CBB75C3A5A6 for ; Thu, 19 Sep 2019 19:54:00 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 98AF820678 for ; Thu, 19 Sep 2019 19:54:00 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="aj4vPhJa" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 98AF820678 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=bootlin.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=V4C3J//gs1IcFvIVkPYTX2ZXrWlh+8e+YgH05EZXrbI=; b=aj4vPhJa73wHce DpINrg8xySBrERA1D2ztFu5NyxjlVIfpF7i6xZWYaQyei9FHkRugkubfuAxbQTY6uR3L0P8zBfuE1 mDYgqyMS3kcF5hM3VIR4TLJ7ezadVcgi3G8NhAbrD9PgGMZegFtYkM1HwLabyylqr4W8utLG7f4fX CyVy3SNF3u1m4U8XV4VyIgb/aBsRcCfnHFVjV2svGC/Zii2dyuBXneLyHvjlIHwrrIrWP7xBUCpX8 +9VDRWCRDMRGP/TLhm2vnkS6PmIdKpWowzLeQHa9HWSvE6J608m5BDn06Bu90iXpRVZ39gwsMC4Fc U5VNTMwihm0tuq/Uy16w==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.2 #3 (Red Hat Linux)) id 1iB2V2-0006c2-Aq; Thu, 19 Sep 2019 19:53:56 +0000 Received: from relay1-d.mail.gandi.net ([217.70.183.193]) by bombadil.infradead.org with esmtps (Exim 4.92.2 #3 (Red Hat Linux)) id 1iB2Ak-0002gz-Go; Thu, 19 Sep 2019 19:33:00 +0000 X-Originating-IP: 91.224.148.103 Received: from localhost.localdomain (unknown [91.224.148.103]) (Authenticated sender: miquel.raynal@bootlin.com) by relay1-d.mail.gandi.net (Postfix) with ESMTPSA id DDF7E240003; Thu, 19 Sep 2019 19:32:54 +0000 (UTC) From: Miquel Raynal To: Richard Weinberger , David Woodhouse , Brian Norris , Marek Vasut , Tudor Ambarus , Vignesh Raghavendra Subject: [PATCH v3 33/40] mtd: rawnand: Fill a default ECC provider/algorithm Date: Thu, 19 Sep 2019 21:31:33 +0200 Message-Id: <20190919193141.7865-34-miquel.raynal@bootlin.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190919193141.7865-1-miquel.raynal@bootlin.com> References: <20190919193141.7865-1-miquel.raynal@bootlin.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190919_123258_971504_B6B878E7 X-CRM114-Status: GOOD ( 11.21 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Tudor Ambarus , Julien Su , Schrempf Frieder , Paul Cercueil , Boris Brezillon , linux-mtd@lists.infradead.org, Thomas Petazzoni , Miquel Raynal , Mason Yang , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org The raw NAND layer may want to use one or another ECC provider if the user did not explicitly broadcasted his choice through the DT. Raw NAND controllers can also want to force these values. In any case, the NAND core must be able to know their preference and this works by letting subsystems/drivers filling/changing the "defaults" ECC structure. Signed-off-by: Miquel Raynal --- drivers/mtd/nand/raw/nand_base.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/mtd/nand/raw/nand_base.c b/drivers/mtd/nand/raw/nand_base.c index a0f23051cc21..d2433d912aee 100644 --- a/drivers/mtd/nand/raw/nand_base.c +++ b/drivers/mtd/nand/raw/nand_base.c @@ -5586,6 +5586,13 @@ static int nand_scan_tail(struct nand_chip *chip) break; } + /* + * If there is no specific user request for the ECC engine provider, use + * the one chosen by the driver being instantiated. + */ + chip->base.ecc.defaults.provider = ecc->mode; + chip->base.ecc.defaults.algo = ecc->algo; + ret = nanddev_init(&chip->base, &rawnand_ops, mtd->owner); if (ret) goto err_nand_manuf_cleanup; -- 2.20.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel