Re: [PATCH] mtd: parser: cmdline: Support MTD names containing one or more colons

From: Miquel Raynal
Date: Mon Jan 04 2021 - 04:09:09 EST


Hello Ian,

Ian Goegebuer <goegebuer@xxxxxxxxxx> wrote on Wed, 23 Dec 2020 13:56:30
-0800:

> On Intel platforms, the usable SPI area is located several
> MiB in from the start, to leave room for descriptors and
> the Management Engine binary. Further, not all the remaining
> space can be used, as the last 16 MiB contains firmware.
>
> To make the SPI usable for mtdblock and other devices,
> it is necessary to enable command line partitions so the
> middle usable region can be specified.
>
> Add a part_probes array which includes only "cmdelineparts",
> and change to mtd_device_parse_register to use this part_probes.

The commit title seem to be taken from another patch and does not
match the below change. Or am I missing something?

> Signed-off-by: "Ronald G. Minnich" <rminnich@xxxxxxxxxx>
> Signed-off-by: Ian Goegebuer <goegebuer@xxxxxxxxxx>
> ---
> drivers/mtd/spi-nor/controllers/intel-spi.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/spi-nor/controllers/intel-spi.c b/drivers/mtd/spi-nor/controllers/intel-spi.c
> index b54a56a68100..9de38851c411 100644
> --- a/drivers/mtd/spi-nor/controllers/intel-spi.c
> +++ b/drivers/mtd/spi-nor/controllers/intel-spi.c
> @@ -903,6 +903,8 @@ static const struct spi_nor_controller_ops intel_spi_controller_ops = {
> .erase = intel_spi_erase,
> };
>
> +static const char * const part_probes[] = { "cmdlinepart", NULL };
> +
> struct intel_spi *intel_spi_probe(struct device *dev,
> struct resource *mem, const struct intel_spi_boardinfo *info)
> {
> @@ -950,7 +952,8 @@ struct intel_spi *intel_spi_probe(struct device *dev,
> if (!ispi->writeable || !writeable)
> ispi->nor.mtd.flags &= ~MTD_WRITEABLE;
>
> - ret = mtd_device_register(&ispi->nor.mtd, &part, 1);
> + ret = mtd_device_parse_register(&ispi->nor.mtd, part_probes,
> + NULL, &part, 1);
> if (ret)
> return ERR_PTR(ret);
>

Thanks,
Miquèl