On Wed, Aug 12, 2009 at 23:37:54, Kevin Hilman wrote:
> Sudhakar Rajashekhara <[email protected]> writes:
> 
> > This patch adds platform data for the 8MB NOR flash
> > found on da850/omap-l138 EVM. Both NOR and NAND can
> > co-exist on da850/omap-l138 as they are using different
> > chip selects.
> >
> > Signed-off-by: Sudhakar Rajashekhara <[email protected]>
> > ---
> >  Since the previous version, EMA_BA_0 pin has been removed
> >  from the mux table as this pin is not being used on
> >  DA850/OMAP-L138 EVM for NOR.
> >
> >  This patch depends on the following patches which I have
> >  submitted to davinci git:
> >  [PATCH v2] davinci: Configure MDIO pins for EMAC
> >  [PATCH v2] davinci: Add platform support for da850/omap-l138 GLCD
> >  [PATCH v2] davinci: Add MMC/SD support for da850/omap-l138
> >  [PATCH v2] davinci: Add NAND flash support for DA850/OMAP-L138
> 
> Would it be possible to do all these additions without the #ifdefs in
> the board file like you did for GLCD.
> 
> IOW, just create/register all of them.  The platform_device will be
> created and potentially waste some memory if the corresponding
> platform_driver is never created, but it makes things a bit more
> flexible.
> 

Sure. I'll change it.

> Are there acutally mux conflicts between some of these devices?
> 
> If so, until we get some better support for dynamic mux, I think it
> would more clear to have this documented (maybe with warnings) in the board
> file so users don't have to experiment with Kconfig options to find
> a working config.
> 

I was planning to submit a patch to handle this right after
this patch.

Few pins of NOR and MMC are shared on da850/omap-l138. I'll be
printing out a warning if both NOR and MMC are enabled in menuconfig.
I'll leave the choice of choosing between NOR and MMC to the user.

> >  arch/arm/mach-davinci/board-da850-evm.c    |   60 
> > ++++++++++++++++++++++++++++
> >  arch/arm/mach-davinci/da850.c              |   50 +++++++++++++++++++++++
> >  arch/arm/mach-davinci/include/mach/da8xx.h |    2 +
> >  arch/arm/mach-davinci/include/mach/mux.h   |   34 ++++++++++++++++
> >  4 files changed, 146 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/mach-davinci/board-da850-evm.c 
> > b/arch/arm/mach-davinci/board-da850-evm.c
> > index b879cc5..6087458 100644
> > --- a/arch/arm/mach-davinci/board-da850-evm.c
> > +++ b/arch/arm/mach-davinci/board-da850-evm.c

[...]

> >  
> > +static void __init da850_evm_init_nor(void)
> > +{
> > +   void __iomem *aemif_addr;
> > +
> > +   aemif_addr = ioremap(DA8XX_AEMIF_CTL_BASE, SZ_32K - 1);
> 
> Why the  -1 here?
> 

My mistake. Will remove -1.

> > +   /* Configure data bus width of CS2 to 16 bit */
> > +   __raw_writel(1, aemif_addr + 0x10);
> 
> Just use writel(), and also some symobilc names would help readability
> instead of using hard-coded constants.
> 

OK.

- Sudhakar


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to