x86: qemu: Add a config for 64-bit U-Boot
authorBin Meng <bmeng.cn@gmail.com>
Wed, 18 Jan 2017 11:33:04 +0000 (03:33 -0800)
committerBin Meng <bmeng.cn@gmail.com>
Tue, 7 Feb 2017 05:34:10 +0000 (13:34 +0800)
commitbda40d5634caa629720b3a47e45517b4ad07df9d
tree48763922d548ebe46d8a1c5c9d4cff3fe9ee399d
parent73d2de2b590f27c6c683a8476238a6e5025bb0e8
x86: qemu: Add a config for 64-bit U-Boot

Add a new board config which uses 64-bit U-Boot. Supported features
are the same as the other 64-bit board (Google Chromebook Link).
It is a start for us to test 64-bit U-Boot easily without the need
to access a real hardware.

Note CONFIG_SPL_ENV_SUPPORT is required for QEMU 64-bit as without
this the SPL build fails at the end. This is just a workaround as
CONFIG_SPL_ENV_SUPPORT is not needed at all.

common/built-in.o:(.data.env_htab+0xc): undefined reference to 'env_flags_validate'
lib/built-in.o: In function `hsearch_r':
lib/hashtable.c:380: undefined reference to 'env_callback_init'
lib/hashtable.c:382: undefined reference to 'env_flags_init'
make[1]: *** [spl/u-boot-spl] Error 1

Except those SPL options required by 64-bit, compared to 32-bit
config, the following options are different:

- CONFIG_SYS_MALLOC_F_LEN has to be increased to 0x1000 for SPL.
- CONFIG_DEBUG_UART has to be included due to the weird issue.
  See TODO comments in arch/x86/cpu/x86_64/cpu.c:arch_setup_gd().
  Once this issue gets fixed, debug uart can be optional.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
board/emulation/Kconfig
board/emulation/qemu-x86/Kconfig
board/emulation/qemu-x86/MAINTAINERS
configs/qemu-x86_64_defconfig [new file with mode: 0644]