linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: computersforpeace@gmail.com (Brian Norris)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 5/9] mtd: nand: Expose data interface for ONFI mode 0
Date: Sat, 8 Oct 2016 22:12:48 -0700	[thread overview]
Message-ID: <20161009051248.GC10199@brian-ubuntu> (raw)
In-Reply-To: <20160915145625.15e81012@bbrezillon>

On Thu, Sep 15, 2016 at 02:56:25PM +0200, Boris Brezillon wrote:
> On Thu, 15 Sep 2016 10:32:49 +0200
> Sascha Hauer <s.hauer@pengutronix.de> wrote:
> 
> > The nand layer will need ONFI mode 0 to use it as timing mode
> > before and right after reset.
> > 
> > Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> > ---
> >  drivers/mtd/nand/nand_timings.c | 11 +++++++++++
> >  include/linux/mtd/nand.h        |  2 ++
> >  2 files changed, 13 insertions(+)
> > 
> > diff --git a/drivers/mtd/nand/nand_timings.c b/drivers/mtd/nand/nand_timings.c
> > index 608d098..9cdbc16 100644
> > --- a/drivers/mtd/nand/nand_timings.c
> > +++ b/drivers/mtd/nand/nand_timings.c
> > @@ -297,3 +297,14 @@ int onfi_init_data_interface(struct nand_chip *chip,
> >  
> >  	return 0;
> >  }
> > +
> > +/**
> > + * nand_get_default_data_interface - [NAND Interface] Retrieve NAND
> > + * data interface for mode 0. This is used as default timing after
> > + * reset.
> > + */
> > +const struct nand_data_interface *nand_get_default_data_interface(void)
> > +{
> > +	return &onfi_sdr_timings[0];
> > +}
> > +EXPORT_SYMBOL(nand_get_default_data_interface);
> 
> You export nand_get_default_data_interface() here, but you don't export
> onfi_init_data_interface().
> None of these functions should be called from NAND controller drivers,
> so they don't need to be exported. ITOH, the prototypes are public
> (defined in nand.h), so nothing prevents a driver from calling these
> functions.

A bit late, but we can still change things for the next cycle of
course...

> I don't know what's the best solution here:
> 1/ Export both nand_get_default_data_interface() and
>    onfi_init_data_interface()

I don't really like this one. We shouldn't export them if we don't want
people to use them in modules. And I'm sure the various compile-test
builders out there would complain eventually if someone did.

> 2/ Do not export them, but keep their prototypes in nand.h with a
>    comment saying that they should not be directly called by NAND
>    controller drivers

Could be OK.

> 3/ Removing the prototypes from nand.h and defining them in nand_base.c
>    (or in a private header).

I like this one. Why not add a drivers/mtd/nand/nand.h that's intended
for the nand.{o,ko} module only?

> Brian, Richard, Sascha, any comments?

Brian

  reply	other threads:[~2016-10-09  5:12 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-15  8:32 [PATCH v4] mtd: nand: automate NAND timings selection Sascha Hauer
2016-09-15  8:32 ` [PATCH 1/9] mtd: nand: Create a NAND reset function Sascha Hauer
2016-09-15  8:32 ` [PATCH 2/9] mtd: nand: Introduce nand_data_interface Sascha Hauer
2016-09-15  8:32 ` [PATCH 3/9] mtd: nand: convert ONFI mode into data interface Sascha Hauer
2016-09-15  8:32 ` [PATCH 4/9] mtd: nand: Add function to convert ONFI mode to data_interface Sascha Hauer
2016-09-15  8:32 ` [PATCH 5/9] mtd: nand: Expose data interface for ONFI mode 0 Sascha Hauer
2016-09-15 12:56   ` Boris Brezillon
2016-10-09  5:12     ` Brian Norris [this message]
2016-10-09 11:58       ` Boris Brezillon
2016-09-15  8:32 ` [PATCH 6/9] mtd: nand: automate NAND timings selection Sascha Hauer
2016-09-15  8:32 ` [PATCH 7/9] mtd: nand: sunxi: switch from manual to automated timing config Sascha Hauer
2016-09-15  8:32 ` [PATCH 8/9] mtd: nand: mxc: implement onfi get/set features Sascha Hauer
2016-11-21 13:56   ` Boris Brezillon
2016-11-22 10:52     ` Sascha Hauer
2016-11-22 11:03       ` Boris Brezillon
2016-09-15  8:32 ` [PATCH 9/9] mtd: nand: mxc: Add timing setup for v2 controllers Sascha Hauer
2016-09-16 12:19 ` [PATCH v4] mtd: nand: automate NAND timings selection Boris Brezillon
2016-09-19  6:43   ` Sascha Hauer
  -- strict thread matches above, loose matches on Subject: below --
2016-09-09 12:05 Sascha Hauer
2016-09-09 12:05 ` [PATCH 5/9] mtd: nand: Expose data interface for ONFI mode 0 Sascha Hauer

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=20161009051248.GC10199@brian-ubuntu \
    --to=computersforpeace@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.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;
as well as URLs for NNTP newsgroup(s).