public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Miquel Raynal <miquel.raynal@bootlin.com>
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>,
	linux-kernel@vger.kernel.org,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	Robert Marko <robert.marko@sartura.hr>,
	Luka Perkov <luka.perkov@sartura.hr>,
	Michael Walle <michael@walle.cc>,
	Randy Dunlap <rdunlap@infradead.org>
Subject: Re: [PATCH v6 3/3] nvmem: core: Expose cells through sysfs
Date: Mon, 17 Jul 2023 18:59:52 +0200	[thread overview]
Message-ID: <2023071724-twiddling-morale-157e@gregkh> (raw)
In-Reply-To: <20230717183323.49a55ad0@xps-13>

On Mon, Jul 17, 2023 at 06:33:23PM +0200, Miquel Raynal wrote:
> Hi Greg,
> 
> gregkh@linuxfoundation.org wrote on Mon, 17 Jul 2023 16:32:09 +0200:
> 
> > On Mon, Jul 17, 2023 at 09:51:47AM +0200, 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.
> > > 
> > > There is one limitation though: if a layout is built as a module but is
> > > not properly installed in the system and loaded manually with insmod
> > > while the nvmem device driver was built-in, the cells won't appear in
> > > sysfs. But if done like that, the cells won't be usable by the built-in
> > > kernel drivers anyway.  
> > 
> > Wait, what?  That should not be an issue here, if so, then this change
> > is not correct and should be fixed as this is NOT an issue for sysfs
> > (otherwise the whole tree wouldn't work.)
> > 
> > Please fix up your dependancies if this is somehow not working properly.
> 
> I'm not sure I fully get your point.
> 
> There is no way we can describe any dependency between a storage device
> driver and an nvmem layout. NVMEM is a pure software abstraction, the
> layout that will be chosen depends on the device tree, but if the
> layout has not been installed, there is no existing mechanism in
> the kernel to prevent it from being loaded (how do you know it's
> not on purpose?).

Once a layout has been loaded, the sysfs files should show up, right?
Otherwise what does a "layout" do?  (hint, I have no idea, it's an odd
term to me...)

thanks,

greg k-h

  reply	other threads:[~2023-07-17 17:00 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-17  7:51 [PATCH v6 0/3] NVMEM cells in sysfs Miquel Raynal
2023-07-17  7:51 ` [PATCH v6 1/3] ABI: sysfs-nvmem-cells: Expose cells through sysfs Miquel Raynal
2023-07-23 19:39   ` John Thomson
2023-07-31 15:51     ` Miquel Raynal
2023-08-01  9:06       ` Srinivas Kandagatla
2023-08-01 16:50         ` Miquel Raynal
2023-07-17  7:51 ` [PATCH v6 2/3] nvmem: core: Create all cells before adding the nvmem device Miquel Raynal
2023-07-17  7:51 ` [PATCH v6 3/3] nvmem: core: Expose cells through sysfs Miquel Raynal
2023-07-17 12:24   ` Michael Walle
2023-07-17 16:41     ` Miquel Raynal
2023-07-17 14:32   ` Greg Kroah-Hartman
2023-07-17 16:33     ` Miquel Raynal
2023-07-17 16:59       ` Greg Kroah-Hartman [this message]
2023-07-31 15:33         ` Miquel Raynal
2023-08-01  9:56           ` Greg Kroah-Hartman
2023-08-01 16:54             ` Miquel Raynal
2023-07-18 10:26   ` Chen-Yu Tsai
2023-07-31 16:05     ` Miquel Raynal

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=2023071724-twiddling-morale-157e@gregkh \
    --to=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luka.perkov@sartura.hr \
    --cc=michael@walle.cc \
    --cc=miquel.raynal@bootlin.com \
    --cc=rdunlap@infradead.org \
    --cc=robert.marko@sartura.hr \
    --cc=srinivas.kandagatla@linaro.org \
    --cc=thomas.petazzoni@bootlin.com \
    /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