From: Tony Lindgren <tony@atomide.com>
To: Vimal Singh <vimal.newwork@gmail.com>
Cc: Artem Bityutskiy <dedekind1@gmail.com>,
Linux MTD <linux-mtd@lists.infradead.org>,
linux-omap@vger.kernel.org
Subject: Re: [PATCH 2/3]NAND: OMAP: Fixing omap nand driver, compiled as module
Date: Wed, 11 Nov 2009 10:43:18 -0800 [thread overview]
Message-ID: <20091111184318.GD24837@atomide.com> (raw)
In-Reply-To: <ce9ab5790911102046w389b0b11l367876fdb49e5dca@mail.gmail.com>
* Vimal Singh <vimal.newwork@gmail.com> [091110 20:46]:
> On Wed, Nov 11, 2009 at 12:26 AM, Tony Lindgren <tony@atomide.com> wrote:
> > * Artem Bityutskiy <dedekind1@gmail.com> [091110 06:22]:
> >> On Fri, 2009-10-30 at 14:57 +0530, Vimal Singh wrote:
> >> > Last time I forgot to 'git add' for 'arch/arm/mach-omap2/gpmc.c'... My bad.
> >> > Correct patch is below.
> >> >
> >> > -vimal
> >> >
> >> >
> >> > From: Vimal Singh <vimalsingh@ti.com>
> >> > Date: Fri, 30 Oct 2009 14:54:29 +0530
> >> > Subject: [PATCH] NAND: OMAP: Fixing omap nand driver, compiled as module
> >> >
> >> > Removing OMAP NAND driver, when loaded as a module, gives error and
> >> > does not get success. This fixes this and makes driver loadable and
> >> > removable run time.
> >> >
> >> > Signed-off-by: Vimal Singh <vimalsingh@ti.com>
> >> > ---
> >> > arch/arm/mach-omap2/gpmc.c | 2 ++
> >> > drivers/mtd/nand/omap2.c | 5 ++++-
> >> > 2 files changed, 6 insertions(+), 1 deletions(-)
> >> >
> >> > diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
> >> > index 1587682..1d10b7b 100644
> >> > --- a/arch/arm/mach-omap2/gpmc.c
> >> > +++ b/arch/arm/mach-omap2/gpmc.c
> >> > @@ -88,6 +88,7 @@ void gpmc_cs_write_reg(int cs, int idx, u32 val)
> >> > reg_addr = gpmc_base + GPMC_CS0 + (cs * GPMC_CS_SIZE) + idx;
> >> > __raw_writel(val, reg_addr);
> >> > }
> >> > +EXPORT_SYMBOL(gpmc_cs_write_reg);
> >> >
> >> > u32 gpmc_cs_read_reg(int cs, int idx)
> >> > {
> >> > @@ -96,6 +97,7 @@ u32 gpmc_cs_read_reg(int cs, int idx)
> >> > reg_addr = gpmc_base + GPMC_CS0 + (cs * GPMC_CS_SIZE) + idx;
> >> > return __raw_readl(reg_addr);
> >> > }
> >> > +EXPORT_SYMBOL(gpmc_cs_read_reg);
> >>
> >> You should get Tony's ack for this. I do not know the code, but on
> >> surface it looks strange. Exporting so low-level functions is bad in
> >> general, IMO. These function should either be inlined, or you should
> >> invent better abstraction, so that you would not need to ever call these
> >> functions from omap2.c.
> >
> > NAK. We don't want the drivers to tinker with these registers
> > directly. And really, the drivers should be platform independent.
> >
> > This seems like a quick hack to add back the missing functionality
> > we threw out of the linux-omap tree. It was thrown out because there
> > were the same cut and paste hacks duplicated all over the place
> > tinkering with the GPMC registers directly.
> >
> > We've fixed a lot of this by creating gpmc-onenand.c and gpmc-smc91x.c,
> > and that's clearly the way to go.
> >
> > So instead of trying to add back the same old hacks, how about rather
> > spend that time to create something that we can use for all boards
> > using GPMC?
> >
> > To me it looks like platform init like this should be done in a
> > generic way in arch/arm/mach-omap2/gpmc-nand.c the same way we have
> > gpmc-onenand.c and gpmc-smc91x.c.
> >
> > Also, you should calculate the GPMC timings dynamically as they
> > can change based on the L3 frequency. Just take a look at the
> > gpmc-onenand.c and gpmc-smc91x.c.
>
> Ok, I'll look into these and will try to do something generic.
Thanks!
Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
prev parent reply other threads:[~2009-11-11 18:43 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <ce9ab5790910292321y1e7239b7pbffe9a5891d66448@mail.gmail.com>
2009-10-30 8:42 ` [PATCH 2/3]NAND: OMAP: Fixing omap nand driver, compiled as module Vimal Singh
2009-10-30 9:27 ` Vimal Singh
2009-11-03 8:28 ` Artem Bityutskiy
2009-11-03 8:35 ` Vimal Singh
2009-11-03 8:39 ` Artem Bityutskiy
2009-11-03 8:48 ` Vimal Singh
2009-11-10 14:23 ` Artem Bityutskiy
2009-11-10 18:56 ` Tony Lindgren
2009-11-11 4:46 ` Vimal Singh
2009-11-11 18:43 ` Tony Lindgren [this message]
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=20091111184318.GD24837@atomide.com \
--to=tony@atomide.com \
--cc=dedekind1@gmail.com \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=vimal.newwork@gmail.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