[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231001175942.749d9bb3@xps-13>
Date: Sun, 1 Oct 2023 17:59:42 +0200
From: Miquel Raynal <miquel.raynal@...tlin.com>
To: Rafał Miłecki <rafal@...ecki.pl>
Cc: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Michael Walle <michael@...le.cc>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>,
Robert Marko <robert.marko@...tura.hr>,
Luka Perkov <luka.perkov@...tura.hr>,
linux-kernel@...r.kernel.org, Randy Dunlap <rdunlap@...radead.org>,
Chen-Yu Tsai <wenst@...omium.org>,
Daniel Golle <daniel@...rotopia.org>
Subject: Re: [PATCH v10 3/3] nvmem: core: Expose cells through sysfs
Hi Rafał,
rafal@...ecki.pl wrote on Fri, 29 Sep 2023 07:18:32 +0200:
> On 2023-09-28 17:31, Rafał Miłecki wrote:
> > On 2023-09-22 19:48, Miquel Raynal wrote:
> >> The binary content of nvmem devices is available to the user so in the
> >> easiest cases, finding the content of a cell is rather easy as it is
> >> just a matter of looking at a known and fixed offset. However, nvmem
> >> layouts have been recently introduced to cope with more advanced
> >> situations, where the offset and size of the cells is not known in
> >> advance or is dynamic. When using layouts, more advanced parsers are
> >> used by the kernel in order to give direct access to the content of >> each
> >> cell, regardless of its position/size in the underlying
> >> device. Unfortunately, these information are not accessible by users,
> >> unless by fully re-implementing the parser logic in userland.
> >> >> Let's expose the cells and their content through sysfs to avoid these
> >> situations. Of course the relevant NVMEM sysfs Kconfig option must be
> >> enabled for this support to be available.
> >> >> Not all nvmem devices expose cells. Indeed, the .bin_attrs attribute
> >> group member will be filled at runtime only when relevant and will
> >> remain empty otherwise. In this case, as the cells attribute group >> will
> >> be empty, it will not lead to any additional folder/file creation.
> >> >> Exposed cells are read-only. There is, in practice, everything in the
> >> core to support a write path, but as I don't see any need for that, I
> >> prefer to keep the interface simple (and probably safer). The >> interface
> >> is documented as being in the "testing" state which means we can later
> >> add a write attribute if though relevant.
> >> >> Signed-off-by: Miquel Raynal <miquel.raynal@...tlin.com>
> >
> > Tested-by: Rafał Miłecki <rafal@...ecki.pl>
> >
> > # hexdump -C /sys/bus/nvmem/devices/u-boot-env0/cells/ipaddr@15c
> > 00000000 31 39 32 2e 31 36 38 2e 31 2e 31 > |192.168.1.1|
> > 0000000b
>
> The same test after converting U-Boot env into layout driver:
>
> # hexdump -C /sys/bus/nvmem/devices/mtd1/cells/ipaddr@15c
> 00000000 31 39 32 2e 31 36 38 2e 31 2e 31 |192.168.1.1|
> 0000000b
>
> Looks good!
>
Great! Thanks a lot for testing!
Miquèl
Powered by blists - more mailing lists