[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <abcd1bc3-9ce7-0402-86f6-d43dacad0fb5@exceet.de>
Date: Thu, 5 Jul 2018 15:06:01 +0200
From: Frieder Schrempf <frieder.schrempf@...eet.de>
To: Boris Brezillon <boris.brezillon@...tlin.com>
Cc: linux-mtd@...ts.infradead.org, linux-spi@...r.kernel.org,
dwmw2@...radead.org, computersforpeace@...il.com,
marek.vasut@...il.com, richard@....at, miquel.raynal@...tlin.com,
broonie@...nel.org, david.wolfe@....com, fabio.estevam@....com,
prabhakar.kushwaha@....com, yogeshnarayan.gaur@....com,
han.xu@....com, shawnguo@...nel.org,
Cyrille Pitchen <cyrille.pitchen@...ev4u.fr>,
Hou Zhiqiang <Zhiqiang.Hou@....com>,
Philipp Puschmann <pp@...ix.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 02/12] mtd: m25p80: Call spi_mem_get_name() to let
controller set a custom name
Hi Boris,
On 05.07.2018 14:56, Boris Brezillon wrote:
> On Thu, 5 Jul 2018 13:14:58 +0200
> Frieder Schrempf <frieder.schrempf@...eet.de> wrote:
>
>> By calling spi_mem_get_name(), the driver of the (Q)SPI controller can
>> set a custom name for the memory device if necessary.
>> This is useful to keep mtdparts compatible when controller drivers are
>> ported from the MTD to the SPI layer.
>>
>> Signed-off-by: Frieder Schrempf <frieder.schrempf@...eet.de>
>> ---
>> drivers/mtd/devices/m25p80.c | 3 +--
>> 1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/drivers/mtd/devices/m25p80.c b/drivers/mtd/devices/m25p80.c
>> index e84563d..482f0ef 100644
>> --- a/drivers/mtd/devices/m25p80.c
>> +++ b/drivers/mtd/devices/m25p80.c
>> @@ -199,8 +199,7 @@ static int m25p_probe(struct spi_mem *spimem)
>> hwcaps.mask |= SNOR_HWCAPS_READ_1_2_2;
>> }
>>
>> - if (data && data->name)
>> - nor->mtd.name = data->name;
>> + nor->mtd.name = spi_mem_get_name(spimem);
>
> Hm, not sure you can do that without breaking setup that pass a
> flash_platform_data object with a name.
>
> Also, you should keep the name extracted from the label property if any
> (this is done earlier, when spi_nor_set_flash_node() is called).
>
> if (data && data->name)
> nor->mtd.name = data->name;
>
> if (!nor->mtd.name)
> nor->mtd.name = spi_mem_get_name(spimem);
I missed both facts, that data could be passed with a name assigned
already and that spi_nor_set_flash_node() might assign a name from dt.
I should have looked at the code more closely.
Thanks for pointing that out. I'll fix it.
Frieder
>
>>
>> /* For some (historical?) reason many platforms provide two different
>> * names in flash_platform_data: "name" and "type". Quite often name is
>
Powered by blists - more mailing lists