From: Marcel Ziswiler Date: Wed, 19 Sep 2018 11:01:55 +0000 (+0200) Subject: imx: mx7: fix potential overflow in imx_ddr_size() X-Git-Tag: v2018.11-rc3~6^2~64 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=2cea8d74dc3a80bbc06aff6b6dcaceb806d563b4;p=oweals%2Fu-boot.git imx: mx7: fix potential overflow in imx_ddr_size() The imx_ddr_size() function may overflow as it is possible to kind of over provision the DDR controller. Fix this by capping it to 2 GB which is the maximum allowed size as per reference manual. Signed-off-by: Marcel Ziswiler Reviewed-by: Fabio Estevam --- diff --git a/arch/arm/mach-imx/mx7/ddr.c b/arch/arm/mach-imx/mx7/ddr.c index f19aeb8042..9713835bf2 100644 --- a/arch/arm/mach-imx/mx7/ddr.c +++ b/arch/arm/mach-imx/mx7/ddr.c @@ -196,5 +196,9 @@ unsigned int imx_ddr_size(void) if (field_val <= 29) bits++; + /* cap to max 2 GB */ + if (bits > 31) + bits = 31; + return 1 << bits; }