From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EF19233A00A; Tue, 26 Aug 2025 13:46:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756215964; cv=none; b=BSoiUHlv2tc+2DZYxIzq8/6CZt0kfH/ByroaeayuxUh50T1xhsCPGmrqG8hpsj8iYuBeHRG73YkRJPdYEBF1njwC6W4AgKBAJrZLFXHFovcEJeEyTl0jwGdxhYLy6RbC19XEb1WXdpudFtwfNM5v8Q9dZ/H+Jlu+vDqZ73XDslU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1756215964; c=relaxed/simple; bh=G2EEl9eV528VylSR5tTXqYkp5FE0zYTFNUHISaxWW/w=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Ge/VpmqdTE6kNJvvQ02Z4s8HXxNgDupmn6cLPuqTrIuZkHrRP+dj1LC4+wp+WeBLFHODyvKv/jymsU9asKNeHp18IYBigdqD77qvciDNg/D4U7JZzNMeTuBd3QyZb5iDtvA2u3fykBoui/i9WFg3cj9EGy5AZ/g6f7YSH9GQ6fM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=c0tJyGax; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="c0tJyGax" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 82F7EC4CEF1; Tue, 26 Aug 2025 13:46:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1756215963; bh=G2EEl9eV528VylSR5tTXqYkp5FE0zYTFNUHISaxWW/w=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=c0tJyGaxACHp25z52Yr0oblVRkB16sZWAGaQ3KGgr0rQ7ILRSFS14iI0G3wB6XBA7 /IsGlMC6PecfrEJBAJh/ohbB/B7h/haim04mzTJLP9QktfIfGEr0zeIxROQJhcwyy3 d5QiCDPt7CSZYbVYYw+50pjJlWCpUI7Oq/W5hOeQ= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Zixun LI , Ada Couprie Diaz , Balamanikandan Gunasundar , Miquel Raynal , Sasha Levin Subject: [PATCH 5.15 201/644] mtd: rawnand: atmel: set pmecc data setup time Date: Tue, 26 Aug 2025 13:04:52 +0200 Message-ID: <20250826110951.421059565@linuxfoundation.org> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250826110946.507083938@linuxfoundation.org> References: <20250826110946.507083938@linuxfoundation.org> User-Agent: quilt/0.68 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 5.15-stable review patch. If anyone has any objections, please let me know. ------------------ From: Balamanikandan Gunasundar [ Upstream commit f552a7c7e0a14215cb8a6fd89e60fa3932a74786 ] Setup the pmecc data setup time as 3 clock cycles for 133MHz as recommended by the datasheet. Fixes: f88fc122cc34 ("mtd: nand: Cleanup/rework the atmel_nand driver") Reported-by: Zixun LI Closes: https://lore.kernel.org/all/c015bb20-6a57-4f63-8102-34b3d83e0f5b@microchip.com Suggested-by: Ada Couprie Diaz Signed-off-by: Balamanikandan Gunasundar Signed-off-by: Miquel Raynal Signed-off-by: Sasha Levin --- drivers/mtd/nand/raw/atmel/pmecc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/mtd/nand/raw/atmel/pmecc.c b/drivers/mtd/nand/raw/atmel/pmecc.c index d1ed5878b3b1..28ed65dd3d43 100644 --- a/drivers/mtd/nand/raw/atmel/pmecc.c +++ b/drivers/mtd/nand/raw/atmel/pmecc.c @@ -143,6 +143,7 @@ struct atmel_pmecc_caps { int nstrengths; int el_offset; bool correct_erased_chunks; + bool clk_ctrl; }; struct atmel_pmecc { @@ -846,6 +847,10 @@ static struct atmel_pmecc *atmel_pmecc_create(struct platform_device *pdev, if (IS_ERR(pmecc->regs.errloc)) return ERR_CAST(pmecc->regs.errloc); + /* pmecc data setup time */ + if (caps->clk_ctrl) + writel(PMECC_CLK_133MHZ, pmecc->regs.base + ATMEL_PMECC_CLK); + /* Disable all interrupts before registering the PMECC handler. */ writel(0xffffffff, pmecc->regs.base + ATMEL_PMECC_IDR); atmel_pmecc_reset(pmecc); @@ -899,6 +904,7 @@ static struct atmel_pmecc_caps at91sam9g45_caps = { .strengths = atmel_pmecc_strengths, .nstrengths = 5, .el_offset = 0x8c, + .clk_ctrl = true, }; static struct atmel_pmecc_caps sama5d4_caps = { -- 2.39.5