On Mon, Jun 21, 2010 at 11:27:31AM +0800, Barry Song wrote: [...] > > How about we add a non_jedec flag in platform_data, if the flag is 1, we > > let the detection pass even though the ID is 0? Otherwise, we need a > > valid ID? > Here i mean:
This will break at least OF-enabled platforms (e.g. PowerPC), they assume that the driver will success for non-JEDEC flashes. OF platforms don't pass platform data, and even if they did, device tree doesn't specify if the flash is JEDEC or non-JEDEC. Which is why I think that, by default, the driver should successfully register the flash even if JEDEC probe fails. So, instead of checking for "!non_jedec", I would recommend "force_jedec" check. > Index: drivers/mtd/devices/m25p80.c > =================================================================== > --- drivers/mtd/devices/m25p80.c (revision 8927) > +++ drivers/mtd/devices/m25p80.c (revision 8929) > @@ -795,8 +795,13 @@ > > jid = jedec_probe(spi); > if (!jid) { > - dev_info(&spi->dev, "non-JEDEC variant of %s\n", > - id->name); > + if (!data->non_jedec) { > + dev_err(&spi->dev, "fail to detect%s\n", > + id->name); > + return -ENODEV; > + } else > + dev_info(&spi->dev, "non-JEDEC variant of %s\n", > + id->name); > } else if (jid != id) { -- Anton Vorontsov email: cbouatmai...@gmail.com irc://irc.freenode.net/bd2 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev