On Fri, Aug 14, 2009 at 04:51:05, Kevin Hilman wrote:
> Sudhakar Rajashekhara <[email protected]> writes:
>
> > On DA850/OMAP-L138 EVM, MMC/SD and NOR Flash share
> > some of the AEMIF pins. This patch prints out a warning
> > during booting, if both MMC/SD and NOR Flash are enabled
> > in kernel menuconfig.
> >
> > If both MMC/SD and NOR Flash are enabled, only MMC/SD
> > will work correctly.
> >
> > Signed-off-by: Sudhakar Rajashekhara <[email protected]>
> > ---
> > This patch is dependent on the following patches which
> > I have submitted earlier:
> > [PATCH] davinci: Macro to convert GPIO signal to GPIO pin number
> > [PATCH v3] davinci: Add platform support for da850/omap-l138 GLCD
> > [PATCH v3] davinci: Add MMC/SD support for da850/omap-l138
> > [PATCH v3] davinci: Add NAND flash support for DA850/OMAP-L138
> > [PATCH v3] davinci: Add NOR flash support for da850/omap-l138
>
> FYI for future reference. When you have lots of patch dependencies
> like this, it is simpler to send them as a series. If you use
> git-format-patch for a range of commits, it will automatically do
> the 'PATCH x/y' formatting etc.
>
In this case, in the series if one patch needs modifications
then do I need to re-submit the whole series again?
> > arch/arm/mach-davinci/board-da850-evm.c | 63
> > ++++++++++++++++++++----------
> > 1 files changed, 42 insertions(+), 21 deletions(-)
> >
> > diff --git a/arch/arm/mach-davinci/board-da850-evm.c
> > b/arch/arm/mach-davinci/board-da850-evm.c
> > index 70a2f48..f2946a0 100644
> > --- a/arch/arm/mach-davinci/board-da850-evm.c
> > +++ b/arch/arm/mach-davinci/board-da850-evm.c
> > @@ -244,6 +244,20 @@ static void __init da850_evm_init_nor(void)
> > iounmap(aemif_addr);
> > }
> >
> > +#if defined(CONFIG_MTD_PHYSMAP) || \
> > + defined(CONFIG_MTD_PHYSMAP_MODULE)
> > +#define HAS_NOR 1
> > +#else
> > +#define HAS_NOR 0
> > +#endif
> > +
> > +#if defined(CONFIG_MMC_DAVINCI) || \
> > + defined(CONFIG_MMC_DAVINCI_MODULE)
> > +#define HAS_MMC 1
> > +#else
> > +#define HAS_MMC 0
> > +#endif
> > +
> > static __init void da850_evm_init(void)
> > {
> > struct davinci_soc_info *soc_info = &davinci_soc_info;
> > @@ -298,27 +312,34 @@ static __init void da850_evm_init(void)
> > pr_warning("da830_evm_init: watchdog registration failed: %d\n",
> > ret);
> >
> > - ret = da8xx_pinmux_setup(da850_mmcsd0_pins);
> > - if (ret)
> > - pr_warning("da850_evm_init: mmcsd0 mux setup failed: %d\n",
> > - ret);
> > -
> > - ret = gpio_request(DA850_MMCSD_CD_PIN, "MMC CD\n");
> > - if (ret)
> > - pr_warning("da850_evm_init: can not open GPIO %d\n",
> > - DA850_MMCSD_CD_PIN);
> > - gpio_direction_input(DA850_MMCSD_CD_PIN);
> > -
> > - ret = gpio_request(DA850_MMCSD_WP_PIN, "MMC WP\n");
> > - if (ret)
> > - pr_warning("da850_evm_init: can not open GPIO %d\n",
> > - DA850_MMCSD_WP_PIN);
> > - gpio_direction_input(DA850_MMCSD_WP_PIN);
> > -
> > - ret = da8xx_register_mmcsd0(&da850_mmc_config);
> > - if (ret)
> > - pr_warning("da850_evm_init: mmcsd0 registration failed: %d\n",
> > - ret);
> > + if (HAS_MMC) {
> > + if (HAS_NOR)
> > + pr_warning("WARNING: both NOR Flash and MMC/SD are "
> > + "enabled, but they share AEMIF pins.\n"
> > + "\tDisable one of them.\n");
> > +
>
> Hmm, this isn't quite right. MMC will never be configured unless NOR
> is enabled also.
>
This is not the case now. MMC will get initialized even if NOR is
not enabled. If the second if condition is true it only prints the
warning and proceeds to initialize MMC.
- Sudhakar
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source