[PATCH u-boot-marvell 02/39] ddr: marvell: axp: fix array types have different bounds warning
Stefan Roese
sr at denx.de
Mon Mar 8 07:41:22 CET 2021
On 07.03.21 05:25, Marek Behún wrote:
> The arrays `pbs_dq_mapping`, `div_ratio1to1` and `div_ratio2to1` have
> different bounds declared in header files where these variables are also
> defined from the ones declared in source files.
>
> This causes the compiler to complain (when building with LTO):
> ddr3_sdram.c:24:12: warning: type of ‘pbs_dq_mapping’ does not match
> original declaration
> [-Wlto-type-mismatch]
> ddr3_patterns_64bit.h:911:5: note: array types have different bounds
> ddr3_patterns_64bit.h:911:5: note: ‘pbs_dq_mapping’ was previously
> declared here
>
> ddr3_dfs.c:45:11: warning: type of ‘div_ratio1to1’ does not match
> original declaration [-Wlto-type-mismatch]
> ddr3_axp_vars.h:167:4: note: array types have different bounds
> ddr3_axp_vars.h:167:4: note: ‘div_ratio1to1’ was previously declared
> here
>
> ddr3_dfs.c:46:11: warning: type of ‘div_ratio2to1’ does not match
> original declaration [-Wlto-type-mismatch]
> ddr3_axp_vars.h:196:4: note: array types have different bounds
> ddr3_axp_vars.h:196:4: note: ‘div_ratio2to1’ was previously declared
> here
>
> CI managed to trigger this as an error when compiling with LTO for AXP.
>
> Fix this by using values from the header files, which seem to be the
> correct ones.
>
> Signed-off-by: Marek Behún <marek.behun at nic.cz>
Reviewed-by: Stefan Roese <sr at denx.de>
Thanks,
Stefan
> ---
> drivers/ddr/marvell/axp/ddr3_dfs.c | 4 ++--
> drivers/ddr/marvell/axp/ddr3_sdram.c | 2 +-
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/ddr/marvell/axp/ddr3_dfs.c b/drivers/ddr/marvell/axp/ddr3_dfs.c
> index b58c0fe01e..2a4596680b 100644
> --- a/drivers/ddr/marvell/axp/ddr3_dfs.c
> +++ b/drivers/ddr/marvell/axp/ddr3_dfs.c
> @@ -42,8 +42,8 @@ extern u8 div_ratio[CLK_VCO][CLK_DDR];
> extern void get_target_freq(u32 freq_mode, u32 *ddr_freq, u32 *hclk_ps);
> #else
> extern u16 odt_dynamic[ODT_OPT][MAX_CS];
> -extern u8 div_ratio1to1[CLK_CPU][CLK_DDR];
> -extern u8 div_ratio2to1[CLK_CPU][CLK_DDR];
> +extern u8 div_ratio1to1[CLK_VCO][CLK_DDR];
> +extern u8 div_ratio2to1[CLK_VCO][CLK_DDR];
> #endif
> extern u16 odt_static[ODT_OPT][MAX_CS];
>
> diff --git a/drivers/ddr/marvell/axp/ddr3_sdram.c b/drivers/ddr/marvell/axp/ddr3_sdram.c
> index 3a266c6de4..0b150b20f3 100644
> --- a/drivers/ddr/marvell/axp/ddr3_sdram.c
> +++ b/drivers/ddr/marvell/axp/ddr3_sdram.c
> @@ -21,7 +21,7 @@ extern u32 pbs_pattern_32b[2][LEN_PBS_PATTERN];
> #if defined(MV88F78X60)
> extern u32 pbs_pattern_64b[2][LEN_PBS_PATTERN];
> #endif
> -extern u32 pbs_dq_mapping[PUP_NUM_64BIT][DQ_NUM];
> +extern u32 pbs_dq_mapping[PUP_NUM_64BIT + 1][DQ_NUM];
>
> #if defined(MV88F78X60) || defined(MV88F672X)
> /* PBS locked dq (per pup) */
>
Viele Grüße,
Stefan
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de
More information about the U-Boot
mailing list