[U-Boot] [PATCH 3/5] OMAP3: make gpmc_config as const

Dirk Behme dirk.behme at googlemail.com
Sun Oct 11 09:54:17 CEST 2009


Nishanth Menon wrote:
> gpmc_config should not be a variant as it is board specific
> hence make it a const parameter

Having this in u-boot-ti/next results in

- All non-SDP3430 boards have

mem.c: In function 'gpmc_init':
mem.c:250: warning: assignment discards qualifiers from pointer target 
type

- Zoom2 fails to build with

zoom2.c:54: error: conflicting types for 'enable_gpmc_cs_config'
/include/asm/arch/sys_proto.h:38: error: previous declaration of 
'enable_gpmc_cs_config' was here

Reverting this patch makes both go away.

Then we get

sdp.c: In function 'board_init':
sdp.c:109: warning: passing argument 1 of 'enable_gpmc_cs_config' 
discards qualifiers from pointer target type
sdp.c:111: warning: passing argument 1 of 'enable_gpmc_cs_config' 
discards qualifiers from pointer target type
sdp.c:113: warning: passing argument 1 of 'enable_gpmc_cs_config' 
discards qualifiers from pointer target type
sdp.c:115: warning: passing argument 1 of 'enable_gpmc_cs_config' 
discards qualifiers from pointer target type

for SDP3430 only, though.

So I'd like to have this patch reverted in u-boot-ti/next and then

a) Fix sdp.c only

or

b) test the other boards, too, before applying this patch.

Best regards

Dirk

> Signed-off-by: Nishanth Menon <nm at ti.com>
> Cc: David B <david-b at pacbell.net>
> Cc: Vikram Pandita <vikram.pandita at ti.com>
> Cc: Richard Woodruff <r-woodruff2 at ti.com>
> Cc: Sandeep Paulraj <s-paulraj at ti.com>
> Cc: Tom Rix <tom.rix at windriver.com>
> Cc: Dirk Behme <dirk.behme at googlemail.com>
> ---
>  cpu/arm_cortexa8/omap3/mem.c           |    6 +++---
>  include/asm-arm/arch-omap3/sys_proto.h |    2 +-
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/cpu/arm_cortexa8/omap3/mem.c b/cpu/arm_cortexa8/omap3/mem.c
> index 8731c9d..8d64478 100644
> --- a/cpu/arm_cortexa8/omap3/mem.c
> +++ b/cpu/arm_cortexa8/omap3/mem.c
> @@ -44,7 +44,7 @@ volatile unsigned int boot_flash_env_addr;
>  struct gpmc *gpmc_cfg;
>  
>  #if defined(CONFIG_CMD_NAND)
> -static u32 gpmc_m_nand[GPMC_MAX_REG] = {
> +static const u32 gpmc_m_nand[GPMC_MAX_REG] = {
>  	M_NAND_GPMC_CONFIG1,
>  	M_NAND_GPMC_CONFIG2,
>  	M_NAND_GPMC_CONFIG3,
> @@ -62,7 +62,7 @@ static u32 gpmc_m_nand[GPMC_MAX_REG] = {
>  #endif
>  
>  #if defined(CONFIG_CMD_ONENAND)
> -static u32 gpmc_onenand[GPMC_MAX_REG] = {
> +static const u32 gpmc_onenand[GPMC_MAX_REG] = {
>  	ONENAND_GPMC_CONFIG1,
>  	ONENAND_GPMC_CONFIG2,
>  	ONENAND_GPMC_CONFIG3,
> @@ -193,7 +193,7 @@ void do_sdrc_init(u32 cs, u32 early)
>  		writel(0, &sdrc_base->cs[cs].mcfg);
>  }
>  
> -void enable_gpmc_cs_config(u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
> +void enable_gpmc_cs_config(const u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
>  			u32 size)
>  {
>  	writel(0, &cs->config7);
> diff --git a/include/asm-arm/arch-omap3/sys_proto.h b/include/asm-arm/arch-omap3/sys_proto.h
> index e59021e..34bd515 100644
> --- a/include/asm-arm/arch-omap3/sys_proto.h
> +++ b/include/asm-arm/arch-omap3/sys_proto.h
> @@ -34,7 +34,7 @@ void memif_init(void);
>  void sdrc_init(void);
>  void do_sdrc_init(u32, u32);
>  void gpmc_init(void);
> -void enable_gpmc_cs_config(u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
> +void enable_gpmc_cs_config(const u32 *gpmc_config, struct gpmc_cs *cs, u32 base,
>  			u32 size);
>  
>  void watchdog_init(void);



More information about the U-Boot mailing list