u-boot/arch/x86/lib/fsp
Bin Meng dc5be508b0 x86: fsp: Make sure HOB list is not overwritten by U-Boot
Intel IvyBridge FSP seems to be buggy that it does not report memory
used by FSP itself as reserved in the resource descriptor HOB. The
FSP specification does not describe how resource descriptor HOBs are
generated by the FSP to describe what memory regions. It looks newer
FSPs like Queensbay and BayTrail do not have such issue. This causes
U-Boot relocation overwrites the important boot service data which is
used by FSP, and the subsequent call to fsp_notify() will fail.

To resolve this, we find out the lowest memory base address allocated
by FSP for the boot service data when walking through the HOB list in
fsp_get_usable_lowmem_top(). Check whether the memory top address is
below the FSP HOB list, and if not, use the lowest memory base address
allocated by FSP as the memory top address.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tested on link (ivybridge non-FSP)
Tested-by: Simon Glass <sjg@chromium.org>
2016-02-21 13:42:52 +08:00
..
Makefile x86: fsp: Make hob command a sub-command to fsp 2015-10-21 07:46:26 -06:00
cmd_fsp.c x86: fsp: Always use hex numbers in the hob command output 2016-01-13 12:20:15 +08:00
fsp_car.S x86: fsp: Add comments about U-Boot entering start.S twice 2015-08-26 07:54:11 -07:00
fsp_common.c Fix board init code to respect the C runtime environment 2016-01-13 21:05:17 -05:00
fsp_dram.c x86: fsp: Pass mrc cache to fsp_init() and save it to gd after fsp_init() 2015-10-21 07:46:27 -06:00
fsp_support.c x86: fsp: Make sure HOB list is not overwritten by U-Boot 2016-02-21 13:42:52 +08:00