x86: ifdtool: Support collating microcode into one place
authorSimon Glass <sjg@chromium.org>
Sat, 15 Aug 2015 20:37:53 +0000 (14:37 -0600)
committerSimon Glass <sjg@chromium.org>
Wed, 26 Aug 2015 14:54:10 +0000 (07:54 -0700)
commitb098032387a6ba1cab181a897075932f7fa2a58d
tree222ab19bab366cb0ceabff655f27a3f32a83d037
parent88cf322e44b85a0e17ce5a5514eff85e7df78dc6
x86: ifdtool: Support collating microcode into one place

The Intel Firmware Support Package (FSP) requires that microcode be provided
very early before the device tree can be scanned. We already support adding
a pointer to the microcode data in a place where early init code can access.

However this just points into the device tree and can only point to a single
lot of microcode. For boards which may have different CPU types we must
support multiple microcodes and pass all of them to the FSP in one place.

Enhance ifdtool to scan all the microcode, place it together in the ROM and
update the microcode pointer to point there. This allows us to pass multiple
microcode blocks to the FSP using its existing API.

Enable the flag in the Makefile so that this feature is used by default for
all boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Makefile
tools/ifdtool.c