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

Ron Minnich
2021-01-04T16:25:53Z

It is likely we're missing something -- I am not fully checked out on
the Linux patch process and it's Ian's first patch.

Guidance appreciated.

On Mon, Jan 4, 2021 at 1:08 AM Miquel Raynal <miquel.raynal@bootlin.com> wrote:
>
> Hello Ian,
>
> Ian Goegebuer <goegebuer@google.com> 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@google.com>
> > Signed-off-by: Ian Goegebuer <goegebuer@google.com>
> > ---
> > 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