[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180831203028.GC62862@ban.mtv.corp.google.com>
Date: Fri, 31 Aug 2018 13:30:28 -0700
From: Brian Norris <computersforpeace@...il.com>
To: Bartosz Golaszewski <brgl@...ev.pl>
Cc: Jonathan Corbet <corbet@....net>, Sekhar Nori <nsekhar@...com>,
Kevin Hilman <khilman@...nel.org>,
Russell King <linux@...linux.org.uk>,
Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
David Woodhouse <dwmw2@...radead.org>,
Boris Brezillon <boris.brezillon@...tlin.com>,
Marek Vasut <marek.vasut@...il.com>,
Richard Weinberger <richard@....at>,
Grygorii Strashko <grygorii.strashko@...com>,
"David S . Miller" <davem@...emloft.net>,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Naren <naren.kernel@...il.com>,
Mauro Carvalho Chehab <mchehab+samsung@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Lukas Wunner <lukas@...ner.de>,
Dan Carpenter <dan.carpenter@...cle.com>,
Florian Fainelli <f.fainelli@...il.com>,
Ivan Khoronzhuk <ivan.khoronzhuk@...aro.org>,
Sven Van Asbroeck <svendev@...x.com>,
Paolo Abeni <pabeni@...hat.com>, Alban Bedel <albeu@...e.fr>,
Rob Herring <robh@...nel.org>,
David Lechner <david@...hnology.com>,
Andrew Lunn <andrew@...n.ch>, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-i2c@...r.kernel.org, linux-mtd@...ts.infradead.org,
linux-omap@...r.kernel.org, netdev@...r.kernel.org,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
briannorris@...omium.org
Subject: Re: [PATCH v2 02/29] Documentation: nvmem: document lookup entries
On Fri, Aug 10, 2018 at 10:04:59AM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@...libre.com>
>
> Describe the usage of nvmem cell lookup tables.
>
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@...libre.com>
> ---
> Documentation/nvmem/nvmem.txt | 28 ++++++++++++++++++++++++++++
> 1 file changed, 28 insertions(+)
>
> diff --git a/Documentation/nvmem/nvmem.txt b/Documentation/nvmem/nvmem.txt
> index 8d8d8f58f96f..9d5e3ca2b4f3 100644
> --- a/Documentation/nvmem/nvmem.txt
> +++ b/Documentation/nvmem/nvmem.txt
> @@ -58,6 +58,34 @@ static int qfprom_probe(struct platform_device *pdev)
> It is mandatory that the NVMEM provider has a regmap associated with its
> struct device. Failure to do would return error code from nvmem_register().
>
> +Additionally it is possible to create nvmem cell lookup entries and register
> +them with the nvmem framework from machine code as shown in the example below:
Maybe it's partially a lacking in the existing documentation, but what
does the "name" and the "nvmem_name" mean here? AFAICT, "nvmem_name" is
akin to a provider identifier; and "name" is a key to match with the
consumer. It feels like this should be in either the header / kerneldoc
or this file. Or maybe both.
Does this mean there can only be a single "mac-address" cell in the
system? I have systems where there are multiple MACs provided in flash
storage, and we need to map them to ethernet0 and ethernet1. Is that
supported here?
Brian
> +static struct nvmem_cell_lookup foobar_lookup = {
> + .info = {
> + .name = "mac-address",
> + .offset = 0xd000,
> + .bytes = ERH_ALEN,
> + },
> + .nvmem_name = "foobar",
> +};
> +
> +static void foobar_register(void)
> +{
> + ...
> + nvmem_add_lookup_table(&foobar_lookup, 1);
> + ...
> +}
> +
> +A lookup entry table can be later removed if needed:
> +
> +static void foobar_fini(void)
> +{
> + ...
> + nvmem_del_lookup_table(&foobar_lookup, 1);
> + ...
> +}
> +
> NVMEM Consumers
> +++++++++++++++
>
> --
> 2.18.0
>
Powered by blists - more mailing lists