From: Boris Brezillon <boris.brezillon@free-electrons.com>
To: "Cédric Le Goater" <clg@kaod.org>
Cc: linux-mtd@lists.infradead.org,
David Woodhouse <dwmw2@infradead.org>,
Brian Norris <computersforpeace@gmail.com>,
Marek Vasut <marek.vasut@gmail.com>,
Richard Weinberger <richard@nod.at>,
Cyrille Pitchen <cyrille.pitchen@atmel.com>,
devicetree@vger.kernel.org, Rob Herring <robh+dt@kernel.org>,
Mark Rutland <mark.rutland@arm.com>
Subject: Re: [PATCH 1/3] mtd: name the mtd device with an optional label property
Date: Wed, 25 Jan 2017 17:51:05 +0100 [thread overview]
Message-ID: <20170125175105.67c335e7@bbrezillon> (raw)
In-Reply-To: <7bdf47c3-d3b7-92a2-47c1-99e4bd6b4f44@kaod.org>
On Wed, 25 Jan 2017 17:47:13 +0100
Cédric Le Goater <clg@kaod.org> wrote:
> On 01/24/2017 03:13 PM, Boris Brezillon wrote:
> > Hi Cédric,
> >
> > On Mon, 16 Jan 2017 14:27:03 +0100
> > Cédric Le Goater <clg@kaod.org> wrote:
> >
> >> This can be used to easily identify a specific chip on a system with
> >> multiple chips.
> >>
> >> Suggested-by: Boris Brezillon <boris.brezillon@free-electrons.com>
> >> Signed-off-by: Cédric Le Goater <clg@kaod.org>
> >> ---
> >> drivers/mtd/mtdcore.c | 7 +++++++
> >> 1 file changed, 7 insertions(+)
> >>
> >> diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
> >> index 052772f7caef..bf61557b599d 100644
> >> --- a/drivers/mtd/mtdcore.c
> >> +++ b/drivers/mtd/mtdcore.c
> >> @@ -654,6 +654,13 @@ static int mtd_add_device_partitions(struct mtd_info *mtd,
> >> */
> >> static void mtd_set_dev_defaults(struct mtd_info *mtd)
> >> {
> >> + /*
> >> + * If DT support is enabled and we have a valid of_node pointer, try to
> >> + * extract the MTD name from the label property.
> >> + */
> >> + if (IS_ENABLED(CONFIG_OF) && mtd->dev.of_node)
> >> + of_property_read_string(mtd->dev.of_node, "label", &mtd->name);
> >> +
> >
> > I realize this kind of thing would be better placed in mtd_set_of_node()
> > (see the patch below). Modifying the mtd->name pointer in the back of
> > MTD drivers is not such a good idea (suppose the driver allocated the
> > memory with a regular kmalloc() and tries to free mtd->name in the remove
> > path).
> >
> > If we move that to mtd_set_of_node(), drivers that wants to support this
> > label property just have to check if mtd->name is NULL (after calling
> > mtd_set_of_node() or nand_set_flash_node()) before assigning a default
> > name.
> > For unmodified drivers we keep the existing behavior: they'll just
> > unconditionally override mtd->name with their own value (which might or
> > might not be dynamically allocated).
>
> ok. So the expected behavior looks correct to me, but adding a call to
> of_property_read_string() in the inline below feels a little hacky.
> Doesn't it ?
>
> May be we need an extra check on IS_ENABLED(CONFIG_OF) also ?
This is all safe, because the of.h header defines stubs if CONFIG_OF is
not set. That just means the name will be unchanged, but you shouldn't
have any problem (neither as compilation time nor at runtime).
next prev parent reply other threads:[~2017-01-25 16:51 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-16 13:27 [PATCH 0/3] Add a "label" property to the mtd device Cédric Le Goater
2017-01-16 13:27 ` [PATCH 1/3] mtd: name the mtd device with an optional label property Cédric Le Goater
2017-01-16 13:32 ` Boris Brezillon
2017-01-24 14:13 ` Boris Brezillon
2017-01-24 14:27 ` Boris Brezillon
2017-01-25 16:47 ` Cédric Le Goater
2017-01-25 16:51 ` Boris Brezillon [this message]
2017-01-25 16:53 ` Cédric Le Goater
2017-01-16 13:27 ` [PATCH 2/3] dt-bindings: mtd: add a common label property to all mtd devices Cédric Le Goater
2017-01-16 13:52 ` Boris Brezillon
2017-01-16 14:39 ` Cédric Le Goater
2017-01-16 14:56 ` [PATCH v2 " Cédric Le Goater
2017-01-19 16:42 ` Rob Herring
2017-01-16 13:27 ` [PATCH 3/3] mtd: spi-nor: add SPI_NOR_DUAL_READ to mx66l51235l Cédric Le Goater
2017-01-16 16:15 ` Marek Vasut
2017-01-16 16:39 ` Cédric Le Goater
2017-01-17 18:19 ` Rob Lippert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170125175105.67c335e7@bbrezillon \
--to=boris.brezillon@free-electrons.com \
--cc=clg@kaod.org \
--cc=computersforpeace@gmail.com \
--cc=cyrille.pitchen@atmel.com \
--cc=devicetree@vger.kernel.org \
--cc=dwmw2@infradead.org \
--cc=linux-mtd@lists.infradead.org \
--cc=marek.vasut@gmail.com \
--cc=mark.rutland@arm.com \
--cc=richard@nod.at \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox