Messages in this thread | | | Date | Wed, 30 May 2018 16:58:16 +0200 | From | Boris Brezillon <> | Subject | Re: [PATCH 03/11] spi: Add a driver for the Freescale/NXP QuadSPI controller |
| |
Hi Frieder,
On Wed, 30 May 2018 15:14:32 +0200 Frieder Schrempf <frieder.schrempf@exceet.de> wrote:
> + > +static const char *fsl_qspi_get_name(struct spi_mem *mem) > +{ > + struct fsl_qspi *q = spi_controller_get_devdata(mem->spi->master); > + struct device *dev = &mem->spi->dev; > + const char *name; > + > + /* > + * In order to keep mtdparts compatible with the old MTD driver at > + * mtd/spi-nor/fsl-quadspi.c, we set a custom name derived from the > + * platform_device of the controller. > + */ > + if (of_get_available_child_count(q->dev->of_node) == 1) > + name = dev_name(q->dev); > + else > + name = devm_kasprintf(dev, GFP_KERNEL, > + "%s-%d", dev_name(q->dev), > + mem->spi->chip_select); > + > + if (!name) { > + dev_err(dev, "failed to get memory for custom flash name\n"); > + return dev_name(q->dev);
Hm, not sure that's what we want. We should probably fail when the allocation fails.
How about letting ->get_name() return an error pointer or NULL in case of error. With the other I made suggestion in my review of patch 1 (calling ->get_name() at probe time) you could refuse to probe the device when ->get_name() fails.
> + } > + > + return name; > +} > +
Regards,
Boris
| |