@@ -21,7 +21,7 @@
#include <command.h>
#include <linux/mtd/omap_gpmc.h>
-struct gpmc *gpmc_cfg;
+const struct gpmc *gpmc_cfg = (struct gpmc *)GPMC_BASE;
#if defined(CONFIG_OMAP34XX)
/********************************************************
@@ -50,8 +50,8 @@ u32 mem_ok(u32 cs)
}
#endif
-void enable_gpmc_cs_config(const u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
- u32 size)
+void enable_gpmc_cs_config(const u32 *gpmc_config, const struct gpmc_cs *cs,
+ u32 base, u32 size)
{
writel(0, &cs->config7);
sdelay(1000);
@@ -75,8 +75,6 @@ void enable_gpmc_cs_config(const u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
*****************************************************/
void gpmc_init(void)
{
- /* putting a blanket check on GPMC based on ZeBu for now */
- gpmc_cfg = (struct gpmc *)GPMC_BASE;
#if defined(CONFIG_NOR)
/* configure GPMC for NOR */
const u32 gpmc_regs[GPMC_MAX_REG] = { STNOR_GPMC_CONFIG1,
@@ -43,8 +43,8 @@ void get_board_mem_timings(struct board_sdrc_timings *timings);
int identify_nand_chip(int *mfr, int *id);
void emif4_init(void);
void gpmc_init(void);
-void enable_gpmc_cs_config(const u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
- u32 size);
+void enable_gpmc_cs_config(const u32 *gpmc_config, const struct gpmc_cs *cs,
+ u32 base, u32 size);
void watchdog_init(void);
void set_muxconf_regs(void);
@@ -92,6 +92,6 @@ struct gpmc {
};
/* Used for board specific gpmc initialization */
-extern struct gpmc *gpmc_cfg;
+extern const struct gpmc *gpmc_cfg;
#endif /* __ASM_OMAP_GPMC_H */
Signed-off-by: Ladislav Michl <ladis@linux-mips.org> --- arch/arm/cpu/armv7/omap-common/mem-common.c | 8 +++----- arch/arm/include/asm/arch-omap3/sys_proto.h | 4 ++-- include/linux/mtd/omap_gpmc.h | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-)