[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20240415100647.32028-1-miquel.raynal@bootlin.com>
Date: Mon, 15 Apr 2024 12:06:47 +0200
From: Miquel Raynal <miquel.raynal@...tlin.com>
To: Christian Marangi <ansuelsmth@...il.com>,
Miquel Raynal <miquel.raynal@...tlin.com>,
Richard Weinberger <richard@....at>,
Vignesh Raghavendra <vigneshr@...com>,
Michael Walle <michael@...le.cc>,
linux-mtd@...ts.infradead.org,
linux-kernel@...r.kernel.org
Cc: stable@...r.kernel.org
Subject: Re: [PATCH v5] mtd: limit OTP NVMEM cell parse to non-NAND devices
On Fri, 2024-04-12 at 10:50:26 UTC, Christian Marangi wrote:
> MTD OTP logic is very fragile on parsing NVMEM cell and can be
> problematic with some specific kind of devices.
>
> The problem was discovered by e87161321a40 ("mtd: rawnand: macronix:
> OTP access for MX30LFxG18AC") where OTP support was added to a NAND
> device. With the case of NAND devices, it does require a node where ECC
> info are declared and all the fixed partitions, and this cause the OTP
> codepath to parse this node as OTP NVMEM cells, making probe fail and
> the NAND device registration fail.
>
> MTD OTP parsing should have been limited to always using compatible to
> prevent this error by using node with compatible "otp-user" or
> "otp-factory".
>
> NVMEM across the years had various iteration on how cells could be
> declared in DT, in some old implementation, no_of_node should have been
> enabled but now add_legacy_fixed_of_cells should be used to disable
> NVMEM to parse child node as NVMEM cell.
>
> To fix this and limit any regression with other MTD that makes use of
> declaring OTP as direct child of the dev node, disable
> add_legacy_fixed_of_cells if we detect the MTD type is Nand.
>
> With the following logic, the OTP NVMEM entry is correctly created with
> no cells and the MTD Nand is correctly probed and partitions are
> correctly exposed.
>
> Fixes: 4b361cfa8624 ("mtd: core: add OTP nvmem provider support")
> Cc: <stable@...r.kernel.org> # v6.7+
> Signed-off-by: Christian Marangi <ansuelsmth@...il.com>
Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/fixes, thanks.
Miquel
Powered by blists - more mailing lists