a38x, a39x: add optional DRAM memory size limit for Linux boot

	Due to LK3.10 power of 2 requirement of address decoding, and the fact
	that mainline LK (3.18)	does not have that requirement, added:
	1. environment variable to control DRAM memory limit for Linux boot:
	- 'limit_dram_size' = yes -> DRAM limited at 3GB
	- 'limit_dram_size' = no  -> DRAM not limited (up to internal IO@3.75GB)
	2. L2 filter base alignment with DDR memory limit

	Updated proper comments on DDR size limitations, while U-Boot prepares
	DRAM information for Linux boot (in Device tree and memory tags):
	- Bin_hdr prioritize IO memory space via L2 filtering @3.0GB, in order
	  to ensure 'hit' on internal registers IO access
	  (located at 0xd0000000 by default)
	- Although U-Boot updates internal base @0xf1000000 (3.75GB), Address
	  decoding supports only windows size aligned to power of 2.
	- If memory size reached 4GB, limit last CS size according to highest
	  power of 2. (when using 2x2GB, last CS will be limited to 1GB)

Change-Id: I32f8c952dcd8bc6b5ff63a0a17e632d635fee286
Signed-off-by: Omri Itach <omrii@marvell.com>
Reviewed-on: http://vgitil04.il.marvell.com:8080/18701
4 files changed