From: Ladislav Michl Date: Tue, 12 Jul 2016 18:28:16 +0000 (+0200) Subject: armv7: make gpmc_cfg const X-Git-Url: http://git.dujemihanovic.xyz/html/static/gitweb.css?a=commitdiff_plain;h=0568dd0663429b00fb77c452e27434c2f4faa14b;p=u-boot.git armv7: make gpmc_cfg const Signed-off-by: Ladislav Michl [trini: Adapt am33xx, duovero, omap_zoom1] Signed-off-by: Tom Rini Signed-off-by: Tom Rini --- diff --git a/arch/arm/cpu/armv7/omap-common/mem-common.c b/arch/arm/cpu/armv7/omap-common/mem-common.c index fc4290c3c4..136a032cd6 100644 --- a/arch/arm/cpu/armv7/omap-common/mem-common.c +++ b/arch/arm/cpu/armv7/omap-common/mem-common.c @@ -21,7 +21,7 @@ #include #include -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, diff --git a/arch/arm/include/asm/arch-am33xx/sys_proto.h b/arch/arm/include/asm/arch-am33xx/sys_proto.h index 8f573d2d02..ed1a46c2e7 100644 --- a/arch/arm/include/asm/arch-am33xx/sys_proto.h +++ b/arch/arm/include/asm/arch-am33xx/sys_proto.h @@ -25,9 +25,8 @@ void ddr_pll_config(unsigned int ddrpll_M); void sdelay(unsigned long); -struct gpmc_cs; void gpmc_init(void); -void enable_gpmc_cs_config(const u32 *gpmc_config, struct gpmc_cs *cs, u32 base, +void enable_gpmc_cs_config(const u32 *gpmc_config, const struct gpmc_cs *cs, u32 base, u32 size); void omap_nand_switch_ecc(uint32_t, uint32_t); diff --git a/arch/arm/include/asm/arch-omap3/sys_proto.h b/arch/arm/include/asm/arch-omap3/sys_proto.h index 1be2b157b8..4c5aa99252 100644 --- a/arch/arm/include/asm/arch-omap3/sys_proto.h +++ b/arch/arm/include/asm/arch-omap3/sys_proto.h @@ -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); diff --git a/board/gumstix/duovero/duovero.c b/board/gumstix/duovero/duovero.c index 9671c5aa54..3786842d36 100644 --- a/board/gumstix/duovero/duovero.c +++ b/board/gumstix/duovero/duovero.c @@ -128,7 +128,7 @@ void board_mmc_power_init(void) #define GPMC_BASEADDR_MASK 0x3F #define GPMC_CS_ENABLE 0x1 -static void enable_gpmc_net_config(const u32 *gpmc_config, struct gpmc_cs *cs, +static void enable_gpmc_net_config(const u32 *gpmc_config, const struct gpmc_cs *cs, u32 base, u32 size) { writel(0, &cs->config7); diff --git a/board/logicpd/zoom1/zoom1.c b/board/logicpd/zoom1/zoom1.c index 982619cd7b..2821ee2267 100644 --- a/board/logicpd/zoom1/zoom1.c +++ b/board/logicpd/zoom1/zoom1.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -29,10 +30,10 @@ DECLARE_GLOBAL_DATA_PTR; -/* gpmc_cfg is initialized by gpmc_init and we use it here */ -extern struct gpmc *gpmc_cfg; - -/* GPMC definitions for Ethenet Controller LAN9211 */ +/* + * gpmc_cfg is initialized by gpmc_init and we use it here. + * GPMC definitions for Ethenet Controller LAN9211 + */ static const u32 gpmc_lab_enet[] = { ZOOM1_ENET_GPMC_CONF1, ZOOM1_ENET_GPMC_CONF2, diff --git a/drivers/mtd/nand/omap_gpmc.c b/drivers/mtd/nand/omap_gpmc.c index 67f293dcd0..6e201d68e5 100644 --- a/drivers/mtd/nand/omap_gpmc.c +++ b/drivers/mtd/nand/omap_gpmc.c @@ -264,7 +264,8 @@ static int omap_calculate_ecc(struct mtd_info *mtd, const uint8_t *dat, { struct nand_chip *chip = mtd_to_nand(mtd); struct omap_nand_info *info = nand_get_controller_data(chip); - uint32_t *ptr, val = 0; + const uint32_t *ptr; + uint32_t val = 0; int8_t i = 0, j; switch (info->ecc_scheme) { diff --git a/include/linux/mtd/omap_gpmc.h b/include/linux/mtd/omap_gpmc.h index 3a75674359..f49ea3d4c4 100644 --- a/include/linux/mtd/omap_gpmc.h +++ b/include/linux/mtd/omap_gpmc.h @@ -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 */