u-boot-brain/arch/arm
Marek Vasut 221a49d5bd ARM: Fix overflow in MMU setup
The patch fixes a corner case where adding size to DRAM start resulted
in a value (1 << 32), which in turn overflew the u32 computation, which
resulted in 0 and it therefore prevented correct setup of the MMU tables.

The addition of DRAM bank start and it's size can end up right at the end
of the address space in the special case of a machine with enough memory.
To prevent this overflow, shift the start and size separately and add them
only after they were shifted.

Hopefully, we only have systems in tree which have DRAM size aligned to
1MiB boundary. If not, this patch would break such systems. On the other
hand, such system would be broken by design anyway.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
2014-08-30 07:46:39 -04:00
..
cpu arm: bcm281xx: Add Ethernet Clock support 2014-08-30 07:46:39 -04:00
dts ARM: tegra: add Colibri T30 board support 2014-08-18 16:59:04 -07:00
imx-common ARM: mx6: Prevent overflow in DRAM size detection 2014-08-20 12:21:57 +02:00
include/asm arm: bcm281xx: Add Ethernet Clock support 2014-08-30 07:46:39 -04:00
lib ARM: Fix overflow in MMU setup 2014-08-30 07:46:39 -04:00
config.mk kconfig: delete redundant CONFIG_${ARCH} definition 2014-07-30 14:42:02 -04:00
Kconfig Merge branch 'master' of git://git.denx.de/u-boot-tegra 2014-08-29 11:07:10 -04:00