Manjunath Hadli <manjunath.hadli@xxxxxx> writes: > Implemented a common and single mapping for DAVINCI_SYSTEM_MODULE_BASE > to be used by all davinci platforms. Please use a more descriptive subject. This patch hs nothing to do with VPBE, so please send it as a standalone patch. Thanks, Kevin > Signed-off-by: Manjunath Hadli <manjunath.hadli@xxxxxx> > Acked-by: Muralidharan Karicheri <m-karicheri2@xxxxxx> > Acked-by: Hans Verkuil <hverkuil@xxxxxxxxx> > --- > arch/arm/mach-davinci/common.c | 4 +++- > arch/arm/mach-davinci/devices.c | 10 ++++------ > arch/arm/mach-davinci/include/mach/hardware.h | 5 +++++ > 3 files changed, 12 insertions(+), 7 deletions(-) > > diff --git a/arch/arm/mach-davinci/common.c b/arch/arm/mach-davinci/common.c > index 1d25573..949e615 100644 > --- a/arch/arm/mach-davinci/common.c > +++ b/arch/arm/mach-davinci/common.c > @@ -111,7 +111,9 @@ void __init davinci_common_init(struct davinci_soc_info *soc_info) > if (ret != 0) > goto err; > } > - > + davinci_sysmodbase = ioremap_nocache(DAVINCI_SYSTEM_MODULE_BASE, 0x800); > + if (!davinci_sysmodbase) > + goto err; > return; > > err: > diff --git a/arch/arm/mach-davinci/devices.c b/arch/arm/mach-davinci/devices.c > index 22ebc64..2bff2d6 100644 > --- a/arch/arm/mach-davinci/devices.c > +++ b/arch/arm/mach-davinci/devices.c > @@ -33,6 +33,8 @@ > #define DM365_MMCSD0_BASE 0x01D11000 > #define DM365_MMCSD1_BASE 0x01D00000 > > +void __iomem *davinci_sysmodbase; > + > static struct resource i2c_resources[] = { > { > .start = DAVINCI_I2C_BASE, > @@ -209,9 +211,7 @@ void __init davinci_setup_mmc(int module, struct davinci_mmc_config *config) > davinci_cfg_reg(DM355_SD1_DATA2); > davinci_cfg_reg(DM355_SD1_DATA3); > } else if (cpu_is_davinci_dm365()) { > - void __iomem *pupdctl1 = > - IO_ADDRESS(DAVINCI_SYSTEM_MODULE_BASE + 0x7c); > - > + void __iomem *pupdctl1 = DAVINCI_SYSMODULE_VIRT(0x7c); > /* Configure pull down control */ > __raw_writel((__raw_readl(pupdctl1) & ~0xfc0), > pupdctl1); > @@ -243,9 +243,7 @@ void __init davinci_setup_mmc(int module, struct davinci_mmc_config *config) > mmcsd0_resources[2].start = IRQ_DM365_SDIOINT0; > } else if (cpu_is_davinci_dm644x()) { > /* REVISIT: should this be in board-init code? */ > - void __iomem *base = > - IO_ADDRESS(DAVINCI_SYSTEM_MODULE_BASE); > - > + void __iomem *base = DAVINCI_SYSMODULE_VIRT(0); > /* Power-on 3.3V IO cells */ > __raw_writel(0, base + DM64XX_VDD3P3V_PWDN); > /*Set up the pull regiter for MMC */ > diff --git a/arch/arm/mach-davinci/include/mach/hardware.h b/arch/arm/mach-davinci/include/mach/hardware.h > index c45ba1f..5a105c4 100644 > --- a/arch/arm/mach-davinci/include/mach/hardware.h > +++ b/arch/arm/mach-davinci/include/mach/hardware.h > @@ -24,6 +24,11 @@ > /* System control register offsets */ > #define DM64XX_VDD3P3V_PWDN 0x48 > > +#ifndef __ASSEMBLER__ > + extern void __iomem *davinci_sysmodbase; > + #define DAVINCI_SYSMODULE_VIRT(x) (davinci_sysmodbase+(x)) > +#endif > + > /* > * I/O mapping > */ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html