[PATCH 1/2] mtd: physmap_of: Add read-only fallback
Aaron Sierra
asierra at xes-inc.com
Wed Dec 17 08:19:15 PST 2014
----- Original Message -----
> From: "Brian Norris" <computersforpeace at gmail.com>
> Sent: Tuesday, December 16, 2014 8:37:00 PM
>
> An old one, but I'm curious...
>
> On Thu, Sep 25, 2014 at 12:20:08PM -0500, Aaron Sierra wrote:
> > From: Joe Schultz <jschultz at xes-inc.com>
> >
> > Previously, when probing a CFI chip which was write-protected at the
> > hardware level, the probe would fail due to the fact it could not put
> > the chip into QUERY mode. This would result in no MTD devices being
> > created.
> >
> > Add a fallback to probe using the map_rom driver if the user-selected
> > probe fails.
>
> Why can't the user just select map_rom instead?
Brian, that isn't an ideal requirement in our situation. Our single-board
computers can become read-only for all onboard non-volatile storage based
on a signal from the outside world (a backplane most often). We find it
helpful to be able to use a single device tree that works in read-write
and read-only environments.
-Aaron
> > Signed-off-by: Joe Schultz <jschultz at xes-inc.com>
> > Signed-off-by: Aaron Sierra <asierra at xes-inc.com>
> > ---
> > drivers/mtd/maps/physmap_of.c | 10 ++++++++++
> > 1 file changed, 10 insertions(+)
> >
> > diff --git a/drivers/mtd/maps/physmap_of.c b/drivers/mtd/maps/physmap_of.c
> > index c62e1c3..efbf416 100644
> > --- a/drivers/mtd/maps/physmap_of.c
> > +++ b/drivers/mtd/maps/physmap_of.c
> > @@ -272,6 +272,16 @@ static int of_flash_probe(struct platform_device *dev)
> > info->list[i].mtd = obsolete_probe(dev,
> > &info->list[i].map);
> > }
> > +
> > + /* Fall back to mapping region as ROM */
> > + if (!info->list[i].mtd) {
> > + dev_warn(&dev->dev,
> > + "do_map_probe() failed for type %s\n",
> > + probe_type);
> > +
> > + info->list[i].mtd = do_map_probe("map_rom",
> > + &info->list[i].map);
> > + }
> > mtd_list[i] = info->list[i].mtd;
> >
> > err = -ENXIO;
> > --
> > 1.9.1
> >
>
More information about the linux-mtd
mailing list