[PATCH 1/2] mtd: physmap_of: Add read-only fallback

Brian Norris computersforpeace at gmail.com
Tue Dec 16 18:37:00 PST 2014


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

> 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