[PATCH 0/2] Uniform way to pass a NAND ID table to the core
Boris Brezillon
boris.brezillon at bootlin.com
Tue Mar 27 00:17:37 PDT 2018
Hi Miquel,
On Wed, 21 Mar 2018 14:12:33 +0100
Miquel Raynal <miquel.raynal at bootlin.com> wrote:
> Hello,
>
> As part of the work of migrating all the drivers to nand_scan(), and
> because nand_scan() does not provide a way to pass any ID table, create
> a field in NAND chip so a controller driver can expose its ID table to
> the core through it and stop using the last parameter of
> nand_scan_ident() for that.
I'm not a big fan of adding yet another field to the nand_chip struct.
Could we instead create a nand_scan_with_ids() function that takes an
extra ID table in argument and then make nand_scan() a wrapper around
this new function?
int nand_scan_with_ids(struct mtd_info *mtd, int max_chips,
struct nand_flash_dev *ids);
static inline int nand_scan(struct mtd_info *mtd, int max_chips)
{
return nand_scan_with_ids(mtd, max_chips, NULL);
}
Regards,
Boris
>
> Apply this to the sm_common driver which is the only one that actually
> provides its own ID table, so there is no remaining driver using this
> third parameter, so all can be moved easily to nand_scan() in a next
> series.
>
> Thanks,
> Miquèl
>
> Miquel Raynal (2):
> mtd: rawnand: add a field in nand_chip to fill an array of IDs
> mtd: rawnand: sm_common: make use of the new flash_ids table entry
>
> drivers/mtd/nand/raw/nand_base.c | 8 ++++++--
> drivers/mtd/nand/raw/sm_common.c | 5 +++--
> include/linux/mtd/rawnand.h | 3 +++
> 3 files changed, 12 insertions(+), 4 deletions(-)
>
--
Boris Brezillon, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the linux-mtd
mailing list